mysql表结构多对多

时间:2015-01-13 19:08:48

标签: mysql database database-design many-to-many

在论坛的数据库中我有POSTS表和TOPICS表。 目前,线程的表示在posts表中作为parent_id字段。 一个帖子(帖子集合)可以有很多主题,反之亦然,因此它在线程和主题之间有很多关系。

然而,没有"线程"表,当唯一的字段是线程ID时,创建一个表是不对的。 另一方面,将帖子连接到主题似乎并不高效,因为主题与线程相关,而不是与单个帖子相关... 任何建议将不胜感激。

2 个答案:

答案 0 :(得分:0)

听起来你需要的是关联表或联结表。看看这个:http://en.wikipedia.org/wiki/Junction_table

答案 1 :(得分:0)

嗯,如果那么你需要另一张桌子可能是post_topic作为一个例子,但我不知道那对你有好处,你会有这个结构

后主题 -id autoincrement PK -pt_post_id FK -pt_topic_id FK -pt_thread_description

在那里你可以管理多对多,并且有一个独特的自动增量id rmaking参考线程,你可以参考表主题和帖子