如何在数据库中设计类似的实体

时间:2012-10-17 06:35:12

标签: database database-design

我的系统中有3个实体。我们称它们为实体A,B和C.实体A成为实体B,而实体B又成为实体C.我必须保留所有3个实体的副本。

我的困境是如何在关系数据中表示它们。所有3个实体都有类似的字段。但是,某些字段适用于某些实体,而某些字段则不适用。

在这种情况下,推荐的方法是什么?我应该使用一张桌子然后制作一个' Type'场?这种方法的问题是soem实体的某些字段将为空。或者我应该创建单独的表?

任何有关最佳实践的建议都会受到极大的影响

1 个答案:

答案 0 :(得分:3)

这听起来像经理 - >人员类型的分层设计。您可以为每个实体分别使用表。但是如果你想获得所有人的列表时它们是相同的基类型,那么你必须联合所有表。如果使用具有单表方法的层次结构列,则必须将表连接到自身。选择一个解决方案时请考虑这两个选项。两者都是对的,但都有自己的困难。