我最近才了解一对多的概念,所以如果这本身有点模糊或断章取义,请原谅。
目前,我正在尝试找出以社交方式构建 table 的最佳方式。我最终想要实现的是 Google+ 墙。例如,关注我的人或我选择查看帖子的人可以看到我发布的内容。我知道我需要两到三张 table 来整理这个烂摊子。这只是如何存储它,以便我可以查询它,这就是我在逻辑上遇到困难的地方。
目前,我正在设想一个表,用于存储成员(member) ID 和帖子(以及任何其他相关数据,如时间戳等)。另一个表中有两个 friend 之间的 friend 关联,第三个表存储其他内容,以便我可以将其用作某种交叉引用。但我不知道我是否以正确的方式思考这个问题。正如我所说,我对这个想法很陌生;我无法完全想象它。那么有人对如何构建这些表有任何建议吗?目前并不想弄清楚如何查询它们。只是想弄清楚如何正确使用一对多概念,而我在该主题上所做的所有阅读实际上并没有以示例的形式给我带来太多帮助,甚至与我想要的内容相对接近做。
最佳答案
您需要一张成员(member) table
成员(成员 ID、成员名称、加入日期等)
一个用于具有成员外键的帖子
帖子(PostId、MemberId、PostDate 等)
为谁的追随者而生
Following (FollowerId, FollowedId),两者都是 Members 表的外键
关于mySQL 一对多数据存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8829860/