根据数据引用两个不同的表?

时间:2012-04-18 15:27:15

标签: sql sql-server entity-framework code-first

解决这个问题的最佳方法是什么。

我有一张桌子上有私人的详细信息,一张桌子上有公司的详细信息。 现在我需要创建一个名为sales的表。该表将引用人员表或公司表,具体取决于其是私人还是购买东西的公司。 最好的方法是什么?将数据从公司/私人复制到销售表中?

我正在使用EF CF和MS-SQL Server 2008。

1 个答案:

答案 0 :(得分:0)

您可以创建两个多对多表company_salesperson_sales或者您可以在sales表中添加两列并使用case when companyId is null then person.name

person
======
personId
name
address

company
=======
companyId
name
address

sales
=====
salesId
productId
amount

person_sales
============
personId
salesId

company_sales
=============
companyId
salesId