mysql中alter主要有两种使用场景,第一种是修改表信息如表名等,第二种是修改表字段信息,如添加字段,修改字段等。第二种使用较多。
第一种修改表信息场景如下:
(1)修改表名
alter table test_a rename to sys_app;
(2)修改表注释
alter table sys_application comment '系统信息表';
第二种修改表字段场景如下:
(1)修改字段类型和注释
alter table sys_application modify column app_name varchar(20) COMMENT '应用的名称';
(2)修改字段类型
alter table sys_application modify column app_name text;
(3)设置字段允许为空
alter table sys_application modify column description varchar(255) null COMMENT '应用描述';
(4)增加一个字段,并设置数据类型,且不为空,添加注释
alter table sys_application add `url` varchar(255) not null comment '应用访问地址';
(5)增加主键
alter table t_app add aid int(5) not null,add primary key (aid);
(6)增加自增主键
alter table t_app add aid int(5) not null auto_increment ,add primary key (aid);
(7)修改为自增主键
alter table t_app modify column aid int(5) auto_increment ;
(8)修改字段名字(要重新指定该字段的类型)
alter table t_app change name app_name varchar(20) not null;
(9)删除字段
alter table t_app drop aid;
(10)在某个字段后增加字段
-- 在哪个字段后面添加
alter table `t_app` add column gateway_id int not null default 0 AFTER `aid`;
(11)调整字段顺序
-- 注意gateway_id出现了2次
alter table t_app change gateway_id gateway_id int not null after aid ;