mysql版本:5.6.17
一、修改某个字段的类型及长度
由于项目已上线,已经有用户的数据存在,而在后期开发中发现某个字段名的长度不够用,所以只能用sql语句单独修改那一个字段的长度而不修改其它:
sql语法:alter table 表名 modify column 字段名 类型(长度);
例子:
alter table user modify column name varchar(50) ;
二、修改表中某个字段的名字
sql语法:ALERT TABLE 表名 change 要改的字段名 新字段名 字段类型(长度);
例子:ALERT TABLE user change pwd password char(32);
*注意1:以上语句不会继承原先字段设置的默认值及注释语句,如果要让以前的默认值继续存在,那么在sql语句中需要再定义一次,并且如果字段类型是varchar或是char类型,还需要设定字段的编码,比如:
语法示例:ALERT TABLE 表名 change 要改的字段名 新字段名 字段类型(长度) CHARCTER SET utf8 COLLATE utf8_general_ci NOT null DEFAULT '默认值' COMMENT '注释';
例子:ALERT TABLE user change pwd password char(32) CHARCTER SET utf8 COLLATE utf8_general_ci NOT null DEFAULT '' COMMENT '用户密码';
*注意2:如果修改或新增的的字段类型是double/float/decimal类型,那么设定字段长度的时候需要两个参数,第一个参数代表显示到页面的总长度,第二个参数代表小数点后面的长度,比如:
语法示例:ALERT TABLE 表名 change 要改的字段名 新字段名 字段类型(5,2) NOT null DEFAULT ’默认值‘ COMMENT '注释';
例子:ALERT TABLE goods change charge price decimao(11,2) NOT null DEFAULT 0 COMMENT '物品价格';//11代表总共在页面显示11位数,2代表显示小数点后面两位 如:123456789.00