1
我对数据库设计相当陌生。开始有四个表的新应用:Assiatance with SQL table relationship
Staff
Vendors
Projects
ProjectSchedules
ProjectSchedules
是一个表,我们将派人项目。有时人们是员工,有时他们是供应商。如何使用一个(或更少?)列在ProjectSchedules表中为员工和供应商建立关系?
重要的是要注意,供应商通常是一家公司(认为人员配备公司)。
我已经做了,在过去类似的事情,但手工处理非键控关系:
SELECT ISNULL(Vendor.Name, Staff.FullName) AS Staff
FROM ProjectStaffing INNER JOIN Vendors, Staff, etc.
你能告诉我,如果有更好的办法?
的可能重复(HTTP [外键指的跨多个表的主键?]:// stackover flow.com/questions/668921/foreign-key-refering-to-primary-keys-across-multiple-tables) – Drecker 2014-09-12 23:16:28
查看此问题的最佳答案。我个人更喜欢第四个提供的建议(模拟一个实体作为你的两个表的基础)http://stackoverflow.com/questions/7844460/foreign-key-to-multiple-tables – Kik 2014-09-12 23:16:38