重新设计ERD

时间:2015-03-14 00:29:38

标签: database erd

嘿,我需要重新设计如下所示的Customer表。

所以我希望重新设计的ERD允许客户成为个人或组织(所以我可能需要一个名为OrganizationName的新属性?)。

每个客户都应记录他们的电子邮件,但组织可能会将电子邮件列留空。

我一直在考虑如何重新设计它几个小时,但仍然找不到任何好方法。

这里有人有任何想法吗?

由于

enter image description here

1 个答案:

答案 0 :(得分:1)

如果你想保持它非常干净,你的Customer表只能包含两个外键,一个是Person表,一个是Organization表。只会填充其中一个外键,另一个外键为空。

这样做意味着额外的表和关系,但可以避免重载单个表来处理两种不同类型的实体。