反向工程数据库后,Mysql工作台没有显示关系

时间:2011-11-29 11:42:15

标签: mysql

我正在使用MySQL workbench 5.2.35 CE来反转Mysql数据库并显示表格及其关系图。 我能够获得每个表及其字段,但它们之间的关系未显示。这是为什么?有什么方法可以修复吗?

3 个答案:

答案 0 :(得分:0)

通常,表之间的关系不存储在DB中。如何组合两个表完全取决于SQL查询,因为几乎无限可能为列命名,这不容易猜到。尝试找到一些SELECT语句或使用暴力来找出匹配的列。

答案 1 :(得分:0)

如果您使用MyISAM作为数据库引擎,则您的数据库不是完全关系型的。使用InnoDB引擎使您的数据库完全关系。然后,当您进行逆向工程时,您将能够看到关系。但请注意,每个都有自己的优点和缺点。谷歌MyISAM与InnoDB有关,以了解更多有关差异的信息。

答案 2 :(得分:0)

我已经为5.2和6.0最新版本测试了mysql-workbench。我的数据库清楚地定义了外键约束。我的数据库使用的是mysql-native SQL。但是关系显示为表之间的线。我创建了另一个只有两个表的测试数据库。在这种情况下,InoDb被用作引擎。外键约束明确定义。在通过“逆向工程”模块后,它仍然只在ER图中生成两个孤立的表对象。

在使用其他商业软件时,我能够在实体之间生成“线条”。

我的问题是,这是工作台本身的问题,还是我的一些错误。我的数据库服务器是5.6.12的最新稳定版本。如果我能得到答案,这对每个人都有好处。您不必浪费时间尝试使用此软件获取ER图。