我使用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