mysql ALTER table 查询中的 AFTER 关键字
AFTER keyword in mysql ALTER table query
当我看到以下形式的更改查询时,我正在浏览一些代码:
alter table table_name add column tags varchar(25) default null after some_field;
阅读 mysql docs for ALTER
Table,AFTER 关键字的用途是
To add a column at a specific position within a table row, use FIRST or AFTER col_name. The default is to add the column last. You can also use FIRST and AFTER in CHANGE or MODIFY operations to reorder columns within a table.
什么时候应该使用这个关键字,运行它是否经常更改具有大量(数百万)行的表是明智的?
当您想要添加到现有列的新列时使用它 table 不应位于列列表的末尾,而应位于特定位置。
示例:现有 table persons
persons: id firstname, lastname, password, permissions
如果您现在要添加新列 fullname
,您可能希望将其直接放在 lastname
之后,而不是列列表的末尾。然后用AFTER
让它看起来像这样
persons: id firstname, lastname, fullname, password, permissions
而不是那个
persons: id firstname, lastname, password, permissions, fullname
由于答案在您的引述中,要重新排序 table 中的列,我们主要使用 AFTER
或 FIRST
创建新列时的关键字。
当我看到以下形式的更改查询时,我正在浏览一些代码:
alter table table_name add column tags varchar(25) default null after some_field;
阅读 mysql docs for ALTER
Table,AFTER 关键字的用途是
To add a column at a specific position within a table row, use FIRST or AFTER col_name. The default is to add the column last. You can also use FIRST and AFTER in CHANGE or MODIFY operations to reorder columns within a table.
什么时候应该使用这个关键字,运行它是否经常更改具有大量(数百万)行的表是明智的?
当您想要添加到现有列的新列时使用它 table 不应位于列列表的末尾,而应位于特定位置。
示例:现有 table persons
persons: id firstname, lastname, password, permissions
如果您现在要添加新列 fullname
,您可能希望将其直接放在 lastname
之后,而不是列列表的末尾。然后用AFTER
让它看起来像这样
persons: id firstname, lastname, fullname, password, permissions
而不是那个
persons: id firstname, lastname, password, permissions, fullname
由于答案在您的引述中,要重新排序 table 中的列,我们主要使用 AFTER
或 FIRST
创建新列时的关键字。