MySql 数据表更新操作,增加列,删除列,修改字段类型,添加字段约束

设计到表结构的更新的操作,使用保留字——ALTER。
1)增加列
保留字:add
基本语句为(圆括号为必要项,方括号为选择项。下同):
alter table (table_name) add (column_name) (col_type) [default|auto_increment|…]
例子:

#table_name=province, column_name=area, col_type=int
ALTER TABLE province ADD area INT;

#同时添加个字段
ALTER TABLE province ADD (
            area INT,
            population int
            );

2)删除列(字段)
保留字:drop,column
基本语句:
alter table (table_name) drop COLUMN (column_name)
例子:

ALTER TABLE province DROP COLUMN area

#删除多个字段
ALTER TABLE province DROP COLUMN area, DROP COLUMN population

3)修改字段类型(长度)
保留字:modify
alter table (table_name) modify (col_name) (new_type)

#由原来char类型修改为varchar类型
ALTER TABLE province MODIFY name varchar(10)

#长度
ALTER TABLE province MODIFY name varchar(18)

注意:修改后的字段类型是否兼容已有数据。修改长度,在定义类型时指定,即是把同类型不同长度看作“类型”来进行更新。

4)修改字段名
保留字:change
基本语句:
ALTER TABLE 表名 CHANGE 原字段名 新字段名 字段类型 约束条件
alter table (table_name) change (old_col_name) (new_col_name) [约束]

5.1)添加字段的外键约束
保留字:add,constraint
alter table (table_name1) add CONSTRAINT foreign key (col_name) references table_name2(ref_column)

5.2)添加字段的唯一性约束
基本语句:
alter table (table_name) add unique(col_name)

5.3)为已有字段增加主键约束
alter table tbl_name add primary key (index_col_name,…);
括号中为字段名,可以为一个或者多个

暂时总结到这么多。
同时也参考其它更全面的总结
https://www.cnblogs.com/huangxm/p/5736807.html

你可能感兴趣的:(database,mysql)