mysql ALTER表查询中的AFTER关键字

时间:2015-01-29 07:47:35

标签: mysql alter-table

当我看到表格的更改查询时,我正在浏览一些代码:

alter table table_name add column tags varchar(25) default null after some_field;

阅读mysql docs for ALTER Table,AFTER关键字的目的是

  

要在表格行中的特定位置添加列,请使用FIRST或AFTER col_name。默认是最后添加列。您还可以在CHANGE或MODIFY操作中使用FIRST和AFTER来重新排序表中的列。

什么时候应该使用这个关键字,是否建议经常运行它来改变有大量(数百万)行的表?

2 个答案:

答案 0 :(得分:1)

当您希望添加到现有表的新列不应位于列列表的末尾但位于特定位置时,请使用它。

示例:现有表persons

persons: id firstname, lastname, password, permissions

如果您现在要添加新列fullname,可能需要在lastname之后直接将其放在列列表的末尾。然后使用AFTER使其看起来像这样

persons: id firstname, lastname, fullname, password, permissions

而不是那个

persons: id firstname, lastname, password, permissions, fullname

答案 1 :(得分:0)

由于答案在您的引语中,要重新排序表格中的列,我们主要在创建新列时使用AFTERFIRST关键字。< / p>