【发布时间】:2012-09-27 13:39:18
【问题描述】:
请考虑以下情况。一个宠物主人可能有多只猫,也可能有多只狗。有些狗与同一个主人的一些猫有血缘关系(即它们打架:-))。
以下关系设计没有施加此限制,因为不同所有者的猫和狗可能是相关的。有没有办法通过关系设计来施加这种限制?
【问题讨论】:
-
在Cat表和Dog表的关系表中添加OwnerId即可。
-
@WahidBitar 仅此还不够 - 您必须确保连接表与猫和狗的相同所有者匹配,而不仅仅是任何所有者。为此,所有者的 PK 本质上需要在整个层次结构中传播。
标签: database-design model entity-relationship relational relational-model