我使用MySQL作为我的主数据库,用于一个简单的“社交网络”,我花了几周的时间。MySQL - 明智吗?
与所有社交网络一样,用户需要与他们的朋友建立联系才能使其社交。
我的理论是要将另一列添加到我的user
数据库并将其命名为连接。在那里,我会存储用逗号分隔的一串用户ID,然后在需要时将其拆分。
我的另一个理论是创建一个全新的表connections
并使用两列“user_1”和“user_2”。然后,数据库在搜索朋友时会执行一个选择查找他们的ID等等。
问题是:什么是最有效的?如果我要支持大量的用户,使用选项2会带来风险吗?
一些建议将不胜感激,
谢谢!
使用选项1会带来风险,更不用说更多的代码,并且每当需要获取“连接”时解析字符串的速度都会更慢。选项2是要走的路。这就是关系数据库的工作原理。 – Brian 2012-04-05 19:12:08
也许你应该阅读[数据库规范化](http://en.wikipedia.org/wiki/Database_normalisation)。 – 2012-04-05 19:12:29
[在mysql的列中保存多个项目](http:// stackoverflow。com/questions/9947436 /控股多个项目在列上的MySQL) – 2012-04-05 19:13:24