用sql语句(alter)追加新字段、外键、删除列

1、添加新字段

alter table 表名 add 新增列名 varchar(4) default '0%' COMMENT '注释' AFTER `添加在哪个列后面`;

alter table tb_workdiary add meter varchar(4) default '0%' COMMENT '完成进度(百分比)' AFTER `state_description`;

2、添加、删除外键

  • 添加外键
    alter table 表名 add CONSTRAINT 外键名称 FOREIGN KEY(外键列名) REFERENCES 主表名(主键列名);
alter table tb_organization add CONSTRAINT organization_fk001 FOREIGN KEY(division_code) REFERENCES tb_division(code);
  • 删除外键
    alter table 表名 drop foreign key 外键名;
alter table tb_organization drop foreign key organization_fk001;

3、删除列

alter table 表名 drop column 列名;

alter table tb_organization drop column area;

4、修改列属性

alter table 表名 modify 列名 类型(长度) COMMENT '注释';

alter table tb_organization modify seq int COMMENT '排序';

5、添加/删除某字段的not null约束

alter table 表名 modify 列名 类型(长度) not null/null COMMENT '注释';

alter table tb_branch modify dept_describe varchar(128) null comment '部门描述';

6、添加新索引

ALTER TABLE 表名 ADD 索引类型 INDEX 索引名 (列名);

索引名可以省略不写

-- 唯一索引,加索引名
ALTER TABLE `tb_organization_project` ADD UNIQUE INDEX `index_unique_projectcode` (`project_code`);

-- 索引,省略索引名 key和index都可以
alter table tb_push_log add key(pushdata_id)

更详细的见:MySQL 添加列,修改列,删除列

原文地址:https://www.cnblogs.com/VitoYi/p/7700939.html