设计 MySQL 表结构
NineData 提供可视化表结构设计方案,您可以在 SQL 窗口中点击鼠标完成表结构的设计,无需再手动输入 SQL 命令。
视频介绍
前提条件
数据源类型为 MySQL。
组织模式下,拥有 SQL 窗口功能模块权限。
组织模式下,拥有对目标数据源的读写权限。
在商业化版本下(、),请确保您的包年包月订阅未过期,否则将无法正常使用数据库 DevOps 服务。您可以在 NineData 控制台页面右上方快速查看剩余配额以及到期时间。
操作步骤
您可以在通过 SQL 窗口创建表或编辑表时设计表结构,本文以创建表为例进行演示。
在 SQL 窗口左侧数据库列表中,右键单击目标数据库,并单击。
提示数据表将会创建在该目标数据库中。
在页签中,即可开始以可视化的方式设计表结构,系统会根据您的配置自动在页面下方生成 。结构设计页面的详情,请在下方选择对应页签并查看。
单击展开完整的可视化表结构参数说明
- 通用项
- 列
- 索引
- 外键
- 约束
- 分区
- 表选项
- :自定义表的名称。
- :选择当前表需要创建在哪个数据库下,默认为步骤 2 中右键单击的数据库。
- :表的注释,即 COMMENT 属性。
设置列。
- :最左侧文本框,输入列的名称,长度最大为 64 个字符。当前界面中的第一行默认为主键列,列名默认为 id。
- :左侧第二个文本框,单击该文本框可以选择列的数据类型。
- NOT NULL:设置该列是否允许空值。当前界面中的第一行主键列,该选项固定选中,即不允许空值。
- :设置当前列的默认值,即 DEFAULT 属性。在该列没有插入其他值的情况下,则使用该默认值。
- :设置当前列的注释,即 COMMENT 属性。通过注释给列设置说明。长度最大为 1024 个字符。
- PRIMARY KEY:设置当前列是否为主键列,通过选中 PRIMARY KEY 左侧复选框,或者单击列名左侧的放大镜图标开启,您也可以将多个列设置为主键列,组成复合主键。
- AUTO_INCREMENT:仅整数类型的列支持,将当前列设置为自增列。
- UNSIGNED:仅整数类型的列支持,将当前列设置为无符号整数类型。
- ON UPDATE CURRENT_TIMESTAMP:仅时间类型的列支持,在更新某一行中的数据时,实时更新该列中的时间。
- SRID:仅几何图形类型的列支持,设置空间引用标识符 SRID。
- :仅字符类型的列支持,设置当前列的字符集。
- :仅字符类型的列支持,根据字符集设置当前列的比较规则。
- :如果当前表中没有适合作为主键的列,可以通过创建该隐藏列作为主键。
- :即 Generated Column,其值可以是其他列的计算结果,选中后,还需要输入中以及选择是否存储列的值。
- VIRTUAL(默认):读取时实时计算列值,不占用存储空间。
- STORED:将列的计算结果保存,占用存储空间。
设置索引。
- :输入索引的名称。当前表中有主键的情况下,第一行默认为主键索引信息。
- :选择需要添加的索引的类型。
- :选择需要添加该索引的列名。
- :为当前索引添加注释信息。
- :仅 MySQL 8.0 及以上版本支持,将当前索引设置为隐藏索引。
- :根据需求加入其他索引选项。
设置外键约束。
- 外键名称:输入外键的名称。
- :选择需要关联外表的外键列。
- :选择将当前外键列关联到哪个库表列。
- ON UPDATE:设置 UPDATE 操作时的限制。
- ON DELETE:设置 DELETE 操作时的限制。
设置检查约束(MySQL 8.0.16 及以上版本支持)。
- :输入约束的名称。
- :输入约束的表达式。例如:age >= 20。
- ENFORCED:是否强制执行约束。
如果您的数据库文件太大,可以设置分区,以提升读取性能。
- :输入分区语句,您可以参考右侧的内容进行输入。
设置表级别的选项。
- :选择表的存储引擎。
- :设置当前表的字符集。
- :根据字符集设置当前表的比较规则。
- :创建临时表,该表的生命周期仅限于当前连接,连接关闭后该临时表将自动删除。
- :根据需求加入其他表选项。
单击,并在弹出的窗口中,单击。
提示您也可以复制 SQL 脚本,手动在其他数据库客户端中执行。