Database design 联接表将包含各个表的外键还是主键

Database design 联接表将包含各个表的外键还是主键,database-design,many-to-many,data-modeling,Database Design,Many To Many,Data Modeling,在此链接中 它们解释了如何使用连接表来解决关系数据库设计中的多关系问题 这条线 如果没有关联类,则连接表(有时也称为联接表或链接表)将仅包含关联每一侧的FK属性 从该示例中,连接表似乎不包含FK,而是包含各个表的主键。 客户ID、订单日期共同构成订单的复合主键,UPC是产品的主键正确。您的“连接”表或“关联”表将包含M2M关系两端的表的PK值。通常情况下,这些列是关联/连接表中仅有的两列,它们可以/通常构成关联/连接表的PK。要清楚:{Cust ID,Order Date}和UPC分别是它们本机

在此链接中

它们解释了如何使用连接表来解决关系数据库设计中的多关系问题

这条线

如果没有关联类,则连接表(有时也称为联接表或链接表)将仅包含关联每一侧的FK属性

从该示例中,连接表似乎不包含FK,而是包含各个表的主键。
客户ID、订单日期
共同构成订单的复合主键,UPC是
产品的主键
正确。您的“连接”表或“关联”表将包含M2M关系两端的表的PK值。通常情况下,这些列是关联/连接表中仅有的两列,它们可以/通常构成关联/连接表的PK。

要清楚:
{Cust ID,Order Date}
UPC
分别是它们本机表上下文中的PK(
Order
Product
)。它们在联接表的上下文中是FK,因为它们引用这些表中的PK。(请注意,如果每个{Order,Product}对最多只能有一个
OrderLine
,那么它们也是联接表本身的复合PK/UK)。