8.1.10.2 列选项卡

使用 子选项卡显示和编辑表的全部列信息。使用此子选项卡,您可以添加、删除和修改列。

您还可以使用 子选项卡更改列属性,例如名称、数据类型和默认值。下图显示了 子选项卡的示例。

图 8.14 列选项卡

Content is described in the surrounding text.

右键单击 列名 列下的行,以打开一个弹出菜单,其中包含以下项目

  • 上移:向上移动所选列。

  • 下移:向下移动所选列。

  • 复制:复制模型的列。

  • 剪切:复制模型的列,然后将其删除。

  • 粘贴:粘贴列。如果已存在同名列,则将 _copy1 附加到列名。

  • 删除所选列:通过右键单击并按 Shift 键选择多个连续列。使用 Control 键选择分离的列。

  • 刷新:更新 子选项卡中的所有信息。

  • 清除默认值:清除分配的默认值。

  • 默认值为 NULL:将列默认值设置为 NULL

  • 默认值为 0:将列默认值设置为 0

  • 默认值为 CURRENT_TIMESTAMP:适用于 TIMESTAMP 数据类型。

  • 默认值为 CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP:适用于 TIMESTAMP 数据类型。

要添加列,请单击空行中的 列名 字段并输入相应的值。从 数据类型 列表中选择数据类型。根据以下列属性列表,根据需要选择列属性复选框。有关每个项目的说明,请参见 CREATE TABLE

  • PK:主键

  • NN:非空

  • UQ:唯一索引

  • BIN:二进制

  • UN:无符号

  • ZF:零填充

  • AI:自动递增

  • G:生成列

    此选项从 MySQL Server 5.7 开始可用。

要更改列的名称、数据类型、默认值或注释,请双击该值以对其进行编辑。

您还可以将列注释添加到 列注释 字段中。还可以使用 列详细信息 面板中的列表设置列整理。

在列名左侧是指示列是否为主键的图标。如果图标是小钥匙,则该列属于主键,否则图标为蓝色菱形或白色菱形。蓝色菱形表示该列已设置了 NN。要将列添加到主键或从主键中删除列,请双击该图标。您也可以通过在表编辑器的 列详细信息 部分中选中 主键 复选框来添加主键。

如果您希望创建复合主键,可以选择多个列并选中 PK 复选框。但是,还需要执行一个额外的步骤,您必须单击索引选项卡,然后在索引列面板中设置主键的所需顺序。

注意

在输入默认值时,对于 CHARVARCHAR 数据类型,MySQL Workbench 将尝试自动添加引号,如果用户没有以引号开头。

警告

在为 ENUM 列输入默认值时,必须格外小心,因为非数值默认值不会自动添加引号。您必须手动为默认值添加单引号。请注意,MySQL Workbench 不会阻止您在没有单引号的情况下输入默认值。如果在没有引号的情况下输入非数值默认值,则会导致错误。例如,如果模型是反向工程的,则脚本将包含 ENUM 列的未加引号的默认值,并且如果尝试在 MySQL Server 上运行脚本,则会失败。

注意

ENUM、BIT 和 SET 在将这些数据类型输入 MySQL Workbench 时,必须至少包含一个值。