我已经阅读并看到ER图中的多对多关系可以通过添加另一个表来显示,该表包括两个表的主键作为参考键。这里payment_party_id
是payment_party
表的主键,receipt_party_id
是receipt_party
表的主键。这背后的逻辑原因是什么:
field key
--------------------- -----------------------
payment_party_id reference key
receipt_party_id reference key
任何人都可以解释为什么只使用引用键添加此附加表吗?
答案 0 :(得分:2)
可以直接在 逻辑实体关系图纸上显示多对多关系。某些建模工具不描述逻辑ERD。它们仅描绘 物理 ERD 。在物理ERD中,使用交集表实现多对多关系。
任何交集表都需要外键(OP:“引用键”)到作为关系一部分的每个表。如果交集表实现了简单的多对多关系,那么两个外键的组合也会形成交集表的复合主键。
换句话说,问题的例子实际上是这样的:
field key
--------------------- -------------------------------------
payment_party_id primary key, foreign (reference) key
receipt_party_id primary key, foreign (reference) key