修改表结构指:
(1)增加/删减列
(2)更改原有列数据类型
(3)重命名列、表
(4)修改表字符集
1、ALTER TABLE 语句修改表结构的语法格式:
ALTER TABLE <表名> [修改选项]
修改选项的语法格式包括:
{ ADD COLUMN <列名> <类型>
| CHANGE COLUMN <旧列名> <新列名> <新列类型>
| ALTER COLUMN <列名> { SET DEFAULT <默认值> | DROP DEFAULT }
| MODIFY COLUMN <列名> <类型>
| DROP COLUMN <列名>
| RENAME TO <新表名>
| CHARACTER SET <字符集名>
| COLLATE <校对规则名> }
{ ADD COLUMN <列名> <类型>        #增加列
 | CHANGE COLUMN <旧列名> <新列名> <新列类型>        #修改列名&数据类型
 | ALTER COLUMN <列名> { SET DEFAULT <默认值> | DROP DEFAULT }        #修改某列的默认值
 | MODIFY COLUMN <列名> <类型>        #修改数据类型
 | DROP COLUMN <列名>        #删除列
 | RENAME TO <新表名>        #重命名表 (TO可省略不写,不影响)
 | CHARACTER SET <字符集名>        #修改字符集(表的编码格式等)
 | COLLATE <校对规则名> }        字符集内用于字符比较和排序的一套规则
特别的:
(1)在特定列位置后,添加列
在 列2 后添加 列1:
mysql> ALTER TABLE <表名> ADD <列名1> <数据类型>(长度) AFTER <列名2>;
将 列1 添加至表的第1列:
mysql> ALTER TABLE <表名> ADD <列名1> <数据类型>(长度) FIRST;
(2)修改列的位置
将 列1 修改至 列2 后面:
mysql> ALTER TABLE <表名> MODIFY <列名1> <数据类型>(长度) AFTER <列名2>;









