有单独的物品表更好吗;注释,或者两者都用一个表


Is it better to have separate tables for articles & comments, or one table for both?

我正在做一个小项目,用户向MySQL提交一篇文章,然后PHP将文章发送到屏幕上。到目前为止还不错。现在我想把它扩展到一个"两级"的帖子系统,人们可以在这里评论文章。事实是,我不知道该怎么做。

我用来储存物品的表格:

表:帖子

id用户日期头像签名张贴

我应该在posts表中创建一个名为comments的新行,还是应该将注释放在一个单独的表中?一个是文章,一个是评论?

我们非常感谢所有的帮助。

取决于您在网站上的使用方式。你必须问:"我的文章和评论本质上是同一个概念吗?"如果是,则使用一个表,如果不是,则使用两个表。在大多数网站上,文章的工作方式不同,可以分类、编辑等,通常需要不同的字段,这会打乱评论表。。。所以在这种情况下,两张表更合理。但是,如果你得出结论,你的网站上的文章和评论通常是一样的(但试着想想未来的证明:你不需要在2个月内添加一些文章功能吗?),那么你可以把文章也看作是评论,并为它们创建一个表。

如果您决定将内容合并到一个表中,并且您意识到您需要另一列来区分帖子的类型,并且某些列对于某些类型仍然未使用,则这是一个明确的警告信号您应该有两个表!

这有点主观,但我只想在posts表上建立一个父/子关系,创建一个parent_id列,它是同一表中id列的外键。为了获得额外的信用,您可以将其设置为嵌套集关系,这将允许您在一个查询中提取父级和所有子级

相关文章: