使用MySQL Workbench创建数据库关系

3

我正在尝试使用MySQL Workbench为表之间创建外键。但是我不知道为什么无法选中复选框来选择一个字段以便与另一个表中的字段进行映射。也许需要两个字段具有相同的类型(还有其他条件??)所以,您能告诉我使用外键创建关系的标准以及如何在MySQL Workbench中执行吗?

5个回答

7
我也遇到了这个问题。我无法创建关联是因为类型不完全相同。我的主键是无符号整数,而外键是有符号整数,所以软件不允许我创建关联。如果软件能够弹出警报或某种用户反馈来突出显示其反对勾选该框的意见,那就太好了。

2
我不是MySQL Workbench的用户,但请确保您首先使用支持外键的存储引擎。(例如,InnoDB)
请参阅MySQL文档,了解外键关系所需的要求。(链接)

1
哦,是的,我看到问题了。我为两个字段设置了不同的排序规则。我进行了修改,使用了一致的排序规则,现在我可以建立关联了。 谢谢你。 - Thang Nguyen

1

我曾经遇到过同样的问题,找到了一个解决方法:

在输入外键约束的名称并选择引用表后,直接点击“下一步”,而不要选择列名。

在这一步中,您将看到新约束的创建SQL脚本。 手动编辑它:输入引用列名和fk列名。 然后点击完成。脚本将被执行。 为了重新检查,请再次打开表格修改窗口,您会发现在外键选项卡中现在已经选中了列复选框。


0

当您在EER图表编辑器中编辑表格时,会出现“外键”选项卡。您可以在那里设置表格之间的外键。(Workbench 5.2.36)


0

我在使用MySql Workbench时遇到了同样的问题。我在表1中有一个char(5)作为我的主键,另一个char(5)作为表2中的外键。但是MySql Workbench不允许我创建这个关联。我正在使用INNODB引擎。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接