我应该使用Table-per-hierarchy吗?

时间:2012-07-27 00:02:56

标签: entity-framework database-design

使用底部的图片更新

我有三个实体 - 公司,项目,员工。

公司有一名或多名公司管理人员。 Project只有一个ProjectManager。 员工只有一个EmployeeManager

我想创建一个数据库设计,然后为此创建EF Code First Model。

我应该创建单独的表来存储CompanyManagers,ProjectManagers和EmployeeManagers

我应该创建一个存储各种管理器的表吗?这样的表可能如下所示: 经理ID

EntityType(公司,项目,员工)

EntityID(CompanyID,ProjectID,EmployeeID)

已更新 到目前为止,这是设计:

enter image description here

1 个答案:

答案 0 :(得分:0)

我们不知道 - 这取决于您的应用要求。无论如何,即使使用TPH,您仍然会有单独的CompanyIDProjectIDEmployeeID列,因为映射到派生类型的特定属性的列无法重用,并且您无法在列上构建条件关系。