【问题标题】:How to structure a SQL table for many authors for one post?如何为一篇文章构建多个作者的 SQL 表?
【发布时间】:2015-04-12 00:31:22
【问题描述】:

我已经走得够远了,我意识到我需要两个表之间的关系。

除了这种情况之外,我一切正常:

假设一张表称为“posts”,另一张表称为“authors”。 他们都有钥匙和所有好东西。

如果“帖子”由两个或多个“作者”撰写,该怎么办? 我似乎无法弄清楚如何创建指向多个“作者”键的“发布”链接。

即 邮政编码 |后文 |日期|等| authorkey1, authorkey2, authorkey3 ...

如果之前已经回答过这个问题,我非常抱歉,但我已经搜索了 stackoverflow 和其他在线资源,但没有找到任何适用于我的场景的内容。

【问题讨论】:

  • 请注意,您要查找的表类型称为xref(交叉引用)。

标签: sql database-design key relational


【解决方案1】:

如果“帖子”是由两个或多个“作者”撰写的怎么办?

如果每个帖子可以有多个作者,您将需要另一个表。

你可以拥有:

  • 每篇文章有 1 个作者(两个表,作者/文章,)
  • 每个帖子有 2 个作者(两个表格,作者/帖子就像你描述的那样)
  • * 每个帖子的作者(三个表,Authors/Posts 和 PostAuthors)

我强烈推荐第三个。如果您选择第二种方法,它会起作用,但您会遇到扩展问题。如果你有 3 个作者怎么办?还是 10 个?

如果您为每个列添加新列,您的表格很快就会变得一团糟。但是,如果您的 PostAuthors 表只包含文章和作者,那么您可以在该表中拥有任意数量的条目。

【讨论】:

  • 我现在明白了。万分感谢。我一直在思考两表格式,期待一种多维行的能力。那么它是第三张桌子。
  • 我试图支持你的答案,但我做不到;对不起。再次感谢您治愈了我的心理障碍。
  • @gwurr3 你可以点击答案旁边的复选框“接受”它:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多