外键和复合 PK

Foreign Keys and Compοund PKs

我主要喜欢使用 mySQL Workbench 的 EER 图处理更复杂的 table。我用它来定义 table 之间的外键。我知道外键应该被索引,但是当我使用 Workbench 来绘制与另一个 table 的关系时,它创建了一个有效创建索引的复合 PK。

所以我对此有点模糊。出于某种原因,外键必须是复合 PK 的一部分吗?

您可能没有正确设置外键,或者误读了您所看到的内容。
PKs 出现在 EER 图中的 Key 图像中,而 FKs 将显示为填充的红色菱形或空的红色菱形,具体取决于它是否默认为 Null。

根据定义,PK 被索引以进行快速查找等...根据定义,mysql 还将为 FK relationship 设置约束和索引。

查看您可以使用 mysql workbench 下载的 sakila 数据库的 EER 图。如果您在使用 mysql workbench 中的 EER 工具设置正确的 FK 关系时遇到问题,这是一个很好的例子。