【发布时间】:2011-05-28 08:33:13
【问题描述】:
这是一个基本的数据库设计问题。我想要一个定义客户之间关系的表(或多个表)。我想要它,以便 PrimaryCustomer 可以链接到多个 SecondaryCustomer,并且可以有多个具有相同关系的 SecondaryCustomer。
PrimaryCustomerID RelationshipID SecondaryCustomerID
1) 如果主键是{PrimaryCustomerID},那么我只能有一个任何类型的链接客户。
2) 如果主键是{PrimaryCustomerID, RelationshipID},那么每种关系类型只能有一个关联客户。
3) 如果主键是{PrimaryCustomerID, RelationshipID, SecondaryCustomerID},那么我可以有任何我喜欢的,但是将所有列都作为主键似乎完全错误。
设置的正确方法是什么?
【问题讨论】:
标签: database database-design normalization