0

最好用一个例子来解释我的问题。这是示例表(InnoDB):

-- 帖子

  • ID
  • 标题
  • title_slug
  • 内容

-- 标签

  • ID
  • 姓名
  • name_slug

-- post_tag_relation

  • 邮政编号
  • 标签ID

假设我正在创建带有标签的简单帖子系统,并且我将哪些帖子具有哪些标签插入到 post_tag_relation 中。postID 和 tagID 是从它们的表中引用的。这是我的问题,我应该在 post_tag_relation 中指定 id (主键)还是有更好的方法来创建它?你建议创建 post_tag_relation 表是什么?

4

1 回答 1

1

您无需为 post_tag_relation 表指定单独的 ID 字段。postID 和 tagID 的组合应该是唯一的,并且可以组成一个复合键。帖子和标签表形成多对多关系,并使用联结表(如您的 post_tag_relation 表)将它们关联起来。如果您不想存储有关标签和帖子之间关系的其他信息(例如,指示标签何时与帖子相关联的时间戳),那么您需要在 post_tag_relation 表中的唯一字段是来自帖子的外键和标签表(即 postID 和 tagID)。

于 2012-08-31T17:16:12.207 回答