在Mysql 里边 Alter TABLE
子选项中 alter column , change column , modify column
有什么区别?
如果有一张大表,执行不同的选项会有什么差异?
求解答
阿神2017-04-17 11:26:20
ALTER COLUMN:設定或刪除列的預設值(操作速度非常快)
例:
alter table film alter column rental_duration set default 5;
alter table film alter column rental_duration drop default;
CHANGE COLUMN:列的重命名、列類型的變更以及列位置的移動
例:
ALTER TABLE MyTable CHANGE COLUMN foo bar VARCHAR(32) NOT NULL FIRST;
ALTER TABLE MyTable CHANGE COLUMN foo bar VARCHAR(32) NOT NULL AFTER baz;
MODIFY COLUMN:除了不能給列重命名之外,他幹的活和CHANGE COLUMN是一樣的
例:
ALTER TABLE MyTable MODIFY COLUMN foo VARCHAR(32) NOT NULL AFTER baz;
引自:http://blog.csdn.net/dba_waterbin/article/details/17884549