【问题标题】:problem with hierarchical database model?分层数据库模型的问题?
【发布时间】:2011-11-03 03:13:22
【问题描述】:

我的数据库设计有问题,我正在开发一个论坛,您可以在其中添加 Topcis,然后在该论坛内添加子主题等等,但在该子论坛中它必须显示该主题和子主题的答案,所以你有一个父主题和子主题,我的问题来自 id,我的意思是,例如,当你创建一个主题 id=1 时,你分配 parent_id=1,但是你如何知道该主题的子主题,例如主题 id =2,parent_id=1,可以分配给孩子id=2,但是有没有更好的办法呢?你将如何解决这个问题?还有mysql我不知道

我有两张桌子

“主题”

身份证 姓名 id_creator 日期 信息 parent_id

“回答”

身份证 姓名 信息 id_creator 日期

【问题讨论】:

  • 你能给我投票吗?谢谢:)

标签: mysql database-design hierarchical-data


【解决方案1】:

我最近不得不在 MySQL 中执行此操作,遗憾的是 MySQL 没有提供任何对处理分层数据有用的东西。

我使用了一个名为 path 的额外 varchar 列,我将在其中存储通向当前项目的“路径”。例如。 id=127 的行是 id=120 的子代,又是 id=15 的子代,其 path='/15/120/127'。

您需要在插入数据时自行处理。

提取所有 id=15 行的直接或非直接子代的行将如下所示:

SELECT * FROM table WHERE
  path LIKE '%/15/%'

我还可以看到,这是 Stackoverflow 上讨论得相当多的话题。在此问题旁边的相关列中查看右侧。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-31
    • 2020-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多