如何在MySQL表中移动列?

目前,我有以下MySQL表: Employees (empID, empName, department);

我想将表更改为以下内容: Employees (empID, department, empName);

如何使用ALTER语句完成此操作?

注意:我只想更改列位置。

回答:

如果empName是VARCHAR(50)列:

ALTER TABLE Employees MODIFY COLUMN empName VARCHAR(50) AFTER department;

根据评论,您还可以执行以下操作:

ALTER TABLE Employees CHANGE COLUMN empName empName VARCHAR(50) AFTER department;

请注意,重复empName是故意的。您必须告诉MySQL您想保持相同的列名。

您应该注意,这两种语法版本都特定于MySQL。例如,它们在PostgreSQL或许多其他DBMS中不起作用。

另一编辑:@Luis

Rossi在评论中指出,您需要在AFTER修饰符之前完全指定更改后的列定义。上面的示例仅具有VARCHAR(50),但是如果您需要其他特征(例如NOT

NULL或默认值),则还需要包括这些特征。有关更多信息,请查阅文档ALTER

TABLE

以上是 如何在MySQL表中移动列? 的全部内容, 来源链接: utcz.com/qa/430703.html

回到顶部