MySQL修改表结构操作命令总结
表的结构如下:
mysql>showcreatetableperson; |person|CREATETABLE`person`( `number`int(11)DEFAULTNULL, `name`varchar(255)DEFAULTNULL, `birthday`dateDEFAULTNULL )ENGINE=MyISAMDEFAULTCHARSET=utf8|
删除列:
ALTERTABLEpersonDROPCOLUMNbirthday;
添加列:
ALTERTABLEpersonADDCOLUMNbirthdaydatetime;
修改列,把number修改为bigint:
ALTERTABLEpersonMODIFYnumberBIGINTNOTNULL;
或者是把number修改为id,类型为bigint:
ALTERTABLEpersonCHANGEnumberidBIGINT;
添加主键:
ALTERTABLEpersonADDPRIMARYKEY(id);
删除主键:
ALTERTABLEpersonDROPPRIMARYKEY;
添加唯一索引:
ALTERTABLEpersonADDUNIQUEname_unique_index(`name`);
为name这一列创建了唯一索引,索引的名字是name_unique_index.
添加普通索引:
ALTERTABLEpersonADDINDEXbirthday_index(`birthday`);
删除索引:
ALTERTABLEpersonDROPINDEXbirthday_index; ALTERTABLEpersonDROPINDEXname_unique_index;
禁用非唯一索引
ALTERTABLEpersonDISABLEKEYS;
ALTERTABLE...DISABLEKEYS让MySQL停止更新MyISAM表中的非唯一索引。
激活非唯一索引
ALTERTABLEpersonENABLEKEYS;
ALTERTABLE...ENABLEKEYS重新创建丢失的索引。
把表默认的字符集和所有字符列(CHAR,VARCHAR,TEXT)改为新的字符集:
ALTERTABLEpersonCONVERTTOCHARACTERSETutf8;
修改表某一列的编码
ALTERTABLEpersonCHANGEnamenamevarchar(255)CHARACTERSETutf8;
仅仅改变一个表的默认字符集
ALTERTABLEpersonDEFAULTCHARACTERSETutf8;
修改表名
RENAMETABLEpersonTOperson_other;
移动表到其他数据库
RENAMETABLEcurrent_db.tbl_nameTOother_db.tbl_name;
热门推荐
10 祝孙辈生日祝福语简短
11 恋人跨年祝福语大全简短
12 考大学敬酒简短祝福语
13 开工投产大吉祝福语 简短
14 偶然结婚祝福语朋友简短
15 感谢学长学姐祝福语简短
16 戏精的祝福语简短
17 我要结婚祝福语简短
18 婚前女儿生日祝福语简短