如何在sql中创建三级关系?

时间:2012-05-31 22:25:57

标签: sql

这是在三个表之间创建关系的最佳方式,例如,Customer有公司,而那些公司有分支。我需要知道你应该如何创建这三个表的键。第一个是CustID,第二个是CustID和CompanyId,最后一个是CustID,CompanyId和BrnchId。 有更好的方法吗?

1 个答案:

答案 0 :(得分:1)

分行与客户无关。公司也不是真的(好吧,公司不依赖于个人客户存在)。您可能希望规范化,因此有一个customerToCompany链接表(因此客户可以拥有许多公司,公司可以拥有许多客户),分支公司可以是一对多,具体取决于您的用例。每个主表都有一个PK(自然或代理,具体取决于数据的性质),链接表包含FK。