能修改字段类型、类型长度、默认值、注释,不能修改字段名
命令: 对某字段进行修改,COLUMN关键字可以省略不写 ALTER TABLE 表名 MODIFY [COLUMN] 字段名 新数据类型 新类型长度 新默认值 新注释;
# 正常,能修改字段类型、类型长度、默认值、注释 alter table table1 modify column column1 decimal(10,1) DEFAULT NULL COMMENT '注释'; alter table table1 modify column1 decimal(10,2) DEFAULT NULL COMMENT '注释';#去掉column命令:
ALTER TABLE 表名 CHANGE [column] 旧字段名 新字段名 新数据类型;
#修改字段名字:把class改为nianji; mysql> alter table student change class nianji varchar(10) ; #正常,此时字段名称没有改变,能修改字段类型、类型长度、默认值、注释 alter table table1 change column1 column1 varchar(100) DEFAULT 1.2 COMMENT '注释'; #-- 正常,能修改字段名、字段类型、类型长度、默认值、注释 alter table table1 change column1 column2 decimal(10,1) DEFAULT NULL COMMENT '注释' #-- 正常,能修改字段名、字段类型、类型长度、默认值、注释 alter table table1 change column2 column1 decimal(10,1) DEFAULT NULL COMMENT '注释' # -- 报错 alter table table1 change column1 column2;在name字段后面添加性别字段,无符号整形,默认值是1; mysql> alter table student add sex int(2) unsigned default 1 after name;
删除字段 命令: ALTER TABLE 表名 DROP [COLUMN] 字段名 ; --COLUMN关键字可以省略不写删除sex字段: mysql> alter table user drop sex;
修改字段名字:把class改为nianji; mysql> alter table student change class nianji varchar(10) ;
嵌套查询插入: 快速插入行,测试的时候用的!呈2^n增长: mysql> insert into ss(name ,nianji,score) select name,nianji,score from ss; 一会功夫就能把数据弄到上百万条。
Mysql切换调整字段顺序,不改变索引哦,完美解决方案! mysql> alter table student modify id int(10) unsigned auto_increment first; #将name修改到id后面 mysql> alter table student modify name varchar(10) after id;
命令:
ALTER TABLE 旧表名 RENAME TO 新表名 ;
#将表user修改为user_new alter table user rename to user_new ;