【问题标题】:How to design similar entities in the database如何在数据库中设计相似的实体
【发布时间】:2012-10-17 15:56:11
【问题描述】:

我的系统中有 3 个实体。我们称它们为实体 A、B 和 C。实体 A 变为实体 B,然后实体 B 变为实体 C。我必须保留所有 3 个实体的副本。

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

在这种情况下推荐的方法是什么。我应该使用一个表然后创建一个“类型”字段吗?这种方法的问题是某些字段对于某些实体来说是空的。还是应该创建单独的表?

任何关于最佳实践的建议将不胜感激

【问题讨论】:

    标签: database database-design


    【解决方案1】:

    这听起来像是经理 -> 人员类型的分层设计。每个实体可能有单独的表。但是,如果当您想要获取所有人的列表时它们具有相同的基本类型,那么您必须合并所有表。如果您将层次结构列与单个表方法一起使用,则必须将表与其自身连接起来。在选择一种解决方案时考虑这两个选项。两者都对,但各有各的难处。

    【讨论】:

    • 感谢您的回复。其实你是对的。它类似于经理->人员关系。是的,我需要牢记同时查询和获得“人”的优势。我会听从你的建议,研究利弊。再次感谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-07-29
    • 2018-09-05
    • 2021-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-08
    相关资源
    最近更新 更多