【发布时间】:2015-03-10 02:33:52
【问题描述】:
我主要喜欢使用 mySQL Workbench 的 EER 图来处理更复杂的表。我用它来定义表之间的外键。我知道应该为外键建立索引,但是当我使用 Workbench 绘制与另一个表的关系时,它会创建一个复合 PK,从而有效地创建索引。
所以我对此有点模糊。出于某种原因,外键必须是复合 PK 的一部分吗?
【问题讨论】:
标签: mysql mysql-workbench
我主要喜欢使用 mySQL Workbench 的 EER 图来处理更复杂的表。我用它来定义表之间的外键。我知道应该为外键建立索引,但是当我使用 Workbench 绘制与另一个表的关系时,它会创建一个复合 PK,从而有效地创建索引。
所以我对此有点模糊。出于某种原因,外键必须是复合 PK 的一部分吗?
【问题讨论】:
标签: mysql mysql-workbench
您要么错误地设置了外键,要么误读了您所看到的内容。
PK 出现在 EER 图中的 Key 图像中,而 FK 将显示为实心红色菱形或空红色菱形,这取决于它是否默认为 Null。
根据定义,PK 被索引以进行快速查找等...根据定义,mysql 还将为FK relationship 设置约束和索引。
查看可使用 mysql 工作台下载的 sakila 数据库的 EER 图。如果您在使用 mysql 工作台中的 EER 工具设置正确的 FK 关系时遇到问题,这是一个很好的示例。
【讨论】: