
曾经有个老用户反馈,DBCS管理mysql的时候,点击属性后,建表语句会出现两次,但是其他的数据库不会这样。该用户反馈属实,但其实这不是bug,而是我们故意设计成这样的。如下文章就和大家解释一下原因。
对于mysql数据库而言,查看建表语句和其他数据库相比如Oracle是有一点优势的。因为,mysql支持show create table语句,如下图:

但是,有经验的用户可能会发现mysql给的建表语句非常冗余,语句中不但有主外键等等各种关系,而且每个列的定义后面还添加一个 defult null的无用配置。总之,Mysql默认的这种建表语句在不同数据库进行建表迁移的时候并不方便。基于这种局限性,DBCS进行了扩展,如下图:

DBCS的属性给出了另外一种建表语句的定义方法,先创建表格,然后在用分步骤语句创建主外键关系。这种方式正好和mysql的show create table语句进行了互补。既然两种方式都有场景,所以DBCS就把两种方式都提供给用户了。
数据库管理工具的设计其实就为了简化用户操作,同时尽可能多的满足各种场景。DBCS设计团队也是遵循这种原则,把常用信息尽可能多的展现给用户。表格和约束分离创建的思路其实也来自另外的用户。因此欢迎大家随时提出宝贵意见,祝大家使用顺利。