7.修改数据表

2018-07-05  本文已影响0人  葡萄超好吃

针对字段操作:添加/删除字段,修改列定义,列名

针对约束操作:添加/删除

针对数据表操作:数据表更名(rename)

1 添加单列

ALTER TABLE tbl_name ADD [COLUMN] col_name column_definition [ FIRST|AFTER col_name ]

默认向后追加,afer first

2 添加多列

ALTER TABLE tbl_name ADD [COLUMN] (col_name column_definition,...)

PS:添加单列可以指定位置关系 ,添加多列不可以指定位置关系

3 删除列

ALTER TABLE tbl_name DROP [COLUMN] col_name

ALTER TABLE tbl_name DROP [COLUMN] col_name,DROP col_name,ADD col_name col_definition(可以同时操作,用逗号隔开操作)

4 添加主键约束

ALTER TABLE tbl_name ADD [ CONSTRAINT [symbol] ] PRIMARY KEY [index_type] (index_col_name,...)

eg: ALTER TABLE user2 ADD CONSTRAINT PK_user2_id PRIMARY KEY (id);

5 添加唯一约束(可以多个)

ALTER TABLE tbl_name ADD [CONSTRAINT[symbol]] UNIQUE [INDEX|KEY] [index_name] [index_type] (index_col_name,...)

6 添加外键约束

ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]] FOREIGN KEY [index_name] (index_col_name,...) reference_definition

eg: ALTER TABLE user2 ADD FOREIGN KEY (pid) REFERENCES provinces (id);

7 添加/删除默认约束

ALTER TABLE tbl_name ALTER [COLUMN] col_name {SET DEFAULLT literal | DROP DEFAULT}

添加 删除

8 删除主键约束

(因为主键只有一个所以不需要指定名称)

ALTER TABLE tbl_name DROP PRIMARY KEY 

9 删除唯一约束

ALTER TBALE tbl_name DROP {INDEX|KEY} index_name;

在删除唯一约束的时候,首先要查看约束的名字即key_name

show indexes from user2\G(以网格形式呈现\G),这里key_name 为username,

查看约束 删除一个,只有一个约束了

10 删除外键约束

ALTER TABLE tbl_name DROP FOREIGN KEY fk_symbol

首先要查看外键约束的名称,这个名称是系统给的

show create table user2

系统赋予外键约束名称“user2_ibfk_1”

ALTER TABLE user2 DROP FOREIGN KEY user2_ibfk_1;

11 修改数据表

1)修改列定义

ALTER TABLE tbl_name MODIFY [COLUMN] col_name column_definition [FIRST|AFTER col_name]

PS : 大数据修改为小数据时,会造成数据丢失。

2)修改列名称

ALTER TABLE tbl_name CHANGE [COLUMN] old_col_name new_col_name column_definition [FIRST | AFTER col_name]

3)修改数据表名

方法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]...

PS:尽量不要随意更改列名,数据表名

上一篇 下一篇

猜你喜欢

热点阅读