【问题标题】:Google plus circles database logic [closed]Google plus 圈子数据库逻辑 [关闭]
【发布时间】:2012-10-10 13:18:52
【问题描述】:

所以我最近开始尝试在我的网站上创建一个类似的圈子系统,比如 google plus。

但不好的是我不太擅长规划数据库。

所以我想在谷歌网站上收集一些信息,我看到每个用户都有唯一的圈子 ID。

所以我的想法是什么。

我有用户,并以这种方式存储它们。

users
users_metadata
users_settings

users 表包含密码、用户名、电子邮件、上次登录和基本信息 users_metadata 包含他们的个人资料的信息 users_settings 包含其他设置选项

所以当用户注册到网站时,users_metadatausers_settings the current userid` 会被插入。

所以我的问题是,使用默认选项为每个用户创建一个users_circles 表是个好主意吗?

我之所以这么想,是因为它可以让他们更轻松地创建自己的群组并删除他们不喜欢的群组。

或者有人可以告诉我一个更好的逻辑吗?如果不是很大的要求。

谢谢

【问题讨论】:

  • 告诉你如何在你的关系型数据库上实现 BigTable 是不是“要求不高”?

标签: php database database-design google-plus geometry


【解决方案1】:

坦率地说,您提出的每人一张桌子的建议是个坏主意。当您有一些用途时,它可能会“正常”工作,但如果它扩展到任何级别,那将是编程和数据库管理的噩梦,更不用说资源的可怕浪费了。

这是一个完美的例子,你应该有一个 users_groups 表,每个用户组都存在。当然,每个组都有自己的 ID,以及组的所有者(用户)。选择组将返回多行 - 组的成员。

这就是关系数据库擅长的。

利用这一点。

【讨论】:

  • 也许更好的是,如果您有一个 groups_metadata,它将包含组的所有者,以及名称和任何其他信息,让组表只有 groupID 和所有会员ID。
  • 这也是我的想法,但看起来我不清楚,对此感到抱歉。所以ide一开始是这样的,你说什么,当他们注册时,它会创建5个具有唯一id的不同组,并将用户id也放在那里,谢谢你的回复
猜你喜欢
  • 2023-03-03
  • 1970-01-01
  • 2015-12-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多