我有以下问题需要表达。
有人员、工作场所和场所。每个人都可以分配到多个工作场所。每个工作场所可以有多个人。每个工作场所都只有一个站点。到现在为止还挺好。但我的问题是每个人在特定地点只有一个工作场所。
如何在 ERM 中表达这一点?
到目前为止我的想法:
我只是无法表达“一个人在特定地点只有一个工作场所”——这种方法的问题。
实施方案:
Table Person with Prs_ID (PK)
Table Site with Site_ID (PK)
Table Workplace with Plc_ID (PK)
Table Person_Site with Prs_Site_PrsID (PK, FK), Prs_Site_SiteID (PK, FK), Prs_Site_PlcID (FK)
Unique Index on Prs_Site_PlcID
我认为这应该可以解决问题。现在我如何在 ERM 中表达这一点?
编辑:
我以为它会解决问题,但事实并非如此。有了这个,我不能将一个工作场所分配给两个不同的人,因为 Prs_Site_PlcID 列上有一个唯一索引。回到开头...