【问题标题】:Should the father know about the children or vica versa?父亲应该知道孩子的情况还是反之亦然?
【发布时间】:2011-07-29 22:13:45
【问题描述】:

父亲应该知道孩子的情况还是反之亦然?

也就是说,在我有两种对象(项目和类别)的情况下,每种对象都有自己的特征和字段,并且我们在它们之间有一个关系,即每个项目都有他所在的类别。

我想通过两种方式询问应该发生什么,理论上和php + mysql。

类别应该知道其中的所有项目,还是每个项目都应该知道其类别?

在 php + mysql 中,确切的问题是我应该为其行中的每个项目保存其类别的 ID,还是应该为此关系创建一个特殊的表(每行包含一个类别 ID 和一个项目 ID)?

【问题讨论】:

    标签: php mysql theory


    【解决方案1】:

    最佳做法是让孩子了解父母(例如:parent_id)。替代方案不可扩展,并且对您的系统来说非常繁重。不过,您可以轻松地运行查询来查找孩子 - SELECT * FROM items WHERE item_category = x。原因是当您添加或删除项目时,类别不受影响。它不会成为不同的类别,因为您将项目分配给它或从中删除项目,因此它不应该关心分配给它的任何项目。

    这与标记设置不同。在一对多的类别分配方法中,项目将属于单个“类别”,但可能具有许多“特征”。标记功能是多对多关系,需要您提到的映射表。分配父类别只需要项目表中的一个“父”字段。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-08-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-14
      • 1970-01-01
      • 2021-05-08
      • 1970-01-01
      相关资源
      最近更新 更多