MySQL Workbench 6.3:如何在特定位置(表中间)插入新列?

3
我正在处理一个SQL表格,并想要在同一表格中创建并插入一个新列。问题是,我希望我的新列位于表格中间的特定位置,而不是在末尾,文档中似乎没有这种确切插入方法。
因此,我的表格名称为“actor”,其列为“actor_id”、“first_name”、“last_name”和“last_update”。我想在“first_name”和“last_name”列之间创建一个名为“middle_name”的列。我尝试的代码是:
ALTER TABLE actor
    ADD middle_name VARCHAR(25);

然而,这只是将列添加到表的末尾,而不是我想要的中间位置。是否有任何建议如何纠正这个问题?

互联网是一种优秀的资源,尝试谷歌搜索"mysql 添加列"。 - P.Salmon
2个回答

2

翻译内容:

它很简单:

ALTER TABLE actor
    ADD COLUMN middle_name VARCHAR(25) AFTER first_name;

1
谢谢,这个很好用!回想起来,是否还有一个“before”命令,类似于ADD COLUMN middle_name VARCHAR(25) BEFORE last_name - Ashok B. Raife
1
是的,在这种情况下可以使用任何一种。但是有一个特殊情况,如果您想在开头插入新列,则必须使用 BEFORE。如果您想在结尾插入列,则可以不使用或使用 AFTER - CarlosH.

1
在MySQL Workbench中,您可以打开表编辑器(通过模式树中的上下文菜单 -> 修改表...)。在列选项卡中,您可以看到所有当前定义的列。您可以添加新列,删除不需要的列并将它们拖动到所需的顺序。然后应用更改。即将推出的向导将允许您审查将发送到服务器的代码。现有数据不应受到影响(除非您删除带有数据的列),但是为了防止出现问题,最好保留备份。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接