MySQL从入门到放弃第四章:修改数据表

修改数据结构

学习目录

数据表的修改操作:无非就是添加列(ADD),删除列(DROP),添加约束(ADD),删除约束(DROP)。用的是ALTER,而INSERT是对数据表添加插入记录用的。

修改数据表:
- 针对字段:添加/删除字段,修改列定义,修改列名称等
- 针对约束:添加/删除各种约束
- 针对数据表:数据表的更名(两种)

  • 添加单列
    • ALTER TABLE tbl_name ADD [COLUMN] col_name column_definition [FIRST | AFTER col_name]
  • 添加多列
    • ALTER TABLE tbl_name ADD [COLUMN] (col_name column_definition,…)
  • 删除列
    • ALTER TABLE tbl_name DROP [COLUMN] col_name
  • 添加/删除主键约束
    • 添加 ALTER TABLE tbl_name ADD [CONSTRAINT[symbol]] PRIMARY KEY [index_type] (index_col_name,…)
    • 删除 ALTER TABLE tbl_name DROP PRIMARY KEY
  • 添加/删除唯一约束
    • 添加 ALTER TABLE tbl_name ADD [CONSTRAINT[symbol]] UNIQUE [INDEX|KEY] [index_name] [index_type] (index_col_name,…)
    • 删除 ALTER TABLE tbl_name DROP {INDEX|KEY} index_name
  • 添加外键约束
    • 添加ALTER TABLE tbl_name ADD [CONSTRAINT[symbol]] FOREIGN KEY [index_name] (index_col_name,…) reference_definition
    • 删除 ALTERE TABLE tab_name DROP FOREIGN KEY fk_symbol
  • 添加/删除默认约束
    • ALTER TABLE tbl_name ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT}
      • 添加:ALTER TABLE users2 ALTER age SET DEFAULT 15;
      • 删除:ALTER TABLE users2 ALTER age DROP DEFAULT;

修改列定义和更名数据表

  • 修改列定义 MODIFY
    • ALTER TABLE tbl_name MODIFY [COLUMN] col_name column_definition [FIRST| ATTERE col_name]
      • ALTER TABLE users MODIFY id SMALLINT UNSIGNED NOT NULL FIRST
  • 修改列名称 CHANGE
    • ALTER TABLE tbl_name CHANGE [COLUMN] old_col_name new_col_name column_definition [FIRST| ATTERE col_name]
      • ALTER TABLE users CHANGE id ID SMALLINT UNSIGNED NOT NULL FIRST
  • 修改数据表名称 RENAME
    1. ALTER TABLE tbl_name RENAME [TO|AS] new_tbl_name
    2. RENAME TABLE tbl_name TO new_tbl_name [,tbl_name2 TO new_tbl_name2]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值