当前位置: 首页 > 面试题库 >

如何在MySQL表中移动列?

勾喜
2023-03-14
问题内容

目前,我有以下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中生成序列表,以便可以从获得唯一ID 。 问题是我需要动态地多个序列。 首先,我创建了一个表: 然后尝试使用http://dev.mysql.com/doc/refman/5.0/en/information- functions.html#function_last-insert- id中的 示例获取编号 一段时间后,我意识到我还需要安全地为新标签生成行。因此,

  • 我用的是最新版本的MySQL Workbench 5.2.40。 在 EER 图中,有没有办法在表之间复制/粘贴列,以及使用拖放将列从一个表移动到另一个表? 我现在看不到任何这样的功能。如果是这种情况,考虑到稍后修改或更正设计会很繁琐,使用Workbench进行初步设计将很困难。我不妨直接使用PhpMyAdmin进行物理设计,因为我可以在更改表时复制SQL语句的粘贴部分。 有什么变通的修改工作台中

  • 问题内容: 在Python中,如何将项目移至列表中的确定索引? 问题答案: 使用列表的方法: 另外,您可以使用切片符号: 如果要将列表中已存在的项目移动到指定位置,则必须将其删除并将其插入新位置:

  • 我想将一列索引为“length”,并使其成为我的第二列。它目前作为第5列存在。我试过: 我看到以下错误: TypeError:必须是str,而不是list 我不确定如何解释这个错误,因为它实际上应该是一个

  • 问题内容: 我查看了界面,但无法找到移动文件的方法。我将如何在Python中做相当于? 问题答案: ,或 全部采用相同的语法: 请注意,你必须file.foo在源和目标参数中都包含文件名()。如果更改,该文件将被重命名和移动。另请注意,在前两种情况下,用于创建新文件的目录必须已经存在。在Windows上,必须不存在具有该名称的文件,否则将引发异常,但即使在这种情况下,它也将以静默方式替换文件。 正

  • 问题内容: 如何在node.js上移动文件(如mv命令外壳)?有什么方法可以使用,还是应该读取文件,写入新文件并删除旧文件? 问题答案: 根据seppo0010的评论,我使用了重命名功能。 http://nodejs.org/docs/latest/api/fs.html#fs_fs_rename_oldpath_newpath_callback fs.rename(oldPath,newPath