MySQL 更改列类型

2025年3月17日 | 阅读 3 分钟

更改列定义是我们希望在数据库中进行的一项非常有用的功能。MySQL 允许使用命令根据我们的需求更改列定义,例如名称和类型。我们可以借助 MySQL 中的 ALTER TABLE 语句来实现这一点。在本文中,我们将逐步介绍如何使用 ALTER TABLE 命令更改列定义。

语法

以下是更改 MySQL 中列数据类型的语法:

让我们详细了解语句的参数。

  • 首先,在 ALTER TABLE 关键字之后,我们将指定要修改列的表名
  • 其次,在 MODIFY 子句之后,我们将指定要更改数据类型的列名
  • 最后,我们将指定列的新数据类型来更改列类型。

如果我们想在单个语句中更改多个列的数据类型,可以使用以下语句:

MySQL 更改列类型示例

让我们通过各种示例来了解 MySQL 中的 ALTER TABLE 语句如何工作以更改列定义。假设我们有一个名为 'employees' 的表,其中包含以下列描述:

表名:employees

MySQL Change Column Type

在上图中,我们可以看到 emp_id 列的数据类型是整数类型。现在假设我们想将 emp_id 的数据类型从 INT 更改为 VARCHAR;我们可以执行以下语句来执行此操作:

执行语句后,如果没有错误,应该会显示以下输出:

MySQL Change Column Type

让我们通过 DESCRIBE 语句验证表信息:

MySQL Change Column Type

在输出中,我们可以观察到 emp_id 列的数据类型已从整数更改为 varchar。

假设您想使用单个语句更改 'employees' 表的多个列数据类型。在这种情况下,我们将使用逗号 (,) 运算符指定列名。请参阅以下语句:

执行语句后,如果没有错误,应该会显示以下输出:

MySQL Change Column Type

现在,再次通过 DESCRIBE 语句验证表信息:

MySQL Change Column Type

在输出中,我们可以观察到 emp_id 列的数据类型已从 varchar 更改为 integer,income 列已从 integer 更改为 varchar。

如何在 MySQL workbench 中更改列数据类型?

要使用 MySQL workbench 更改列数据类型,我们首先需要启动它,然后使用我们之前创建的用户名和密码登录。它将返回以下屏幕:

MySQL Change Column Type

现在执行以下步骤来更改列定义,例如名称或数据类型:

1. 转到导航选项卡,然后单击包含 MySQL 服务器中所有可用数据库的Schema 菜单

2. 选择数据库(例如,mystudentdb),双击它,它将显示包含 Tables、Views、Functions 和 Stored Procedures 的子菜单。

3. 展开Tables 子菜单并选择要在其中更改列定义的表。例如,'students' 表包含以下列定义:

MySQL Change Column Type

4. 如果我们想将 class 列的类型从 INT 更改为 VARCHAR,请右键单击选定的表(students),然后单击 Alter Table 选项。我们应该会看到以下屏幕:

MySQL Change Column Type

5. 单击要更改的列对应的datatype框,选择所需的类型,然后单击 Apply 按钮。请参阅下图:

MySQL Change Column Type

6. 我们将看到以下屏幕。如果没有错误,请单击 Apply 按钮。

MySQL Change Column Type

7. 最后,单击 Finish 按钮完成该过程。

MySQL Change Column Type

8. 现在,再次通过 DESCRIBE 语句验证表信息。

MySQL Change Column Type

在输出中,我们可以观察到 class 列的数据类型已从整数更改为 varchar


下一主题MySQL 重置自增