【问题标题】:DB Schema design Parent Children grand childrenDB Schema 设计 Parent Children 孙子
【发布时间】:2020-05-30 20:22:35
【问题描述】:

您好,我正在研究一种创建关系数据库的方法,其结构如下

Parent
 -Child 1
  -Grand Child 1
 -Child 2
  -Grand child 2

但是孙子 2 也可以是子 1 的一部分

如果父母可以有 n 个孩子,而孩子可以有 n 个孙子,那很好,使用 RMDBS 非常简单。

当您想对大孙子进行更深入的处理时,问题就出现了,而孙子可能是多个孩子的一部分。

一个很好的例子是 ebay 对其产品的分类。

在数据库中创建这样的动态树/网络的正确方法是什么?

【问题讨论】:

  • 这是一个常见问题解答。在考虑发布之前,请始终在谷歌上搜索任何错误消息或您的问题/问题/目标的许多清晰、简洁和精确的措辞,带有和不带有您的特定字符串/名称和站点:stackoverflow.com 和标签;阅读许多答案。如果您发布问题,请使用一个短语作为标题。请参阅How to Ask 和投票箭头鼠标悬停文本。

标签: mysql database-design database-schema rdbms hierarchical-data


【解决方案1】:

来自我的answer to a similar question

在更复杂的模型中,例如不同车型共用同一个 电机型号(不清楚您是否在谈论汽车 模型或特定汽车),ParentEntityId 列将被替换 通过关系表:

TABLE Entity (Id, Name, EntityTypeId)
TABLE EntityHierarchy (Id, ParentEntityId, ChildEntityId)

EntityHierarchy 表中的条目将受到限制(在 应用程序级别)按EntityTypes树

【讨论】:

  • 对不起,但我想即使在阅读了你的原始帖子后我也没有完全理解它。你能详细说明一下吗
猜你喜欢
  • 2011-11-06
  • 1970-01-01
  • 2017-11-29
  • 2014-09-09
  • 1970-01-01
  • 2022-12-02
  • 2017-09-11
  • 2011-12-18
  • 2011-09-03
相关资源
最近更新 更多