qq資料庫設計
⑴ 求一個QQ空間留言板的資料庫設計思路
id 留言ID
userid 用戶ID,標示該條留言誰發的
parentid 上一級的留言ID,如果是最高級的(新發的留言) 上級為0, 如果該條留言是 id為56的 留言的回復,則其上級parentid為56。
contents 留言內容
time 留言時間
⑵ QQ資料庫表設計
隨心所欲
⑶ 關於 QQ 好友資料庫設計
針對sql server資料庫來說(sql server比mysql好一些,比oracle差),如果有一個萬個用戶就一萬張表。資料庫對表數量的支持也是有限制的。
並且創建表需要有相應的級別比較高的許可權,如果每注冊一個用戶就新建一張表,用戶的許可權太高了。
再次,按照你的說法,一個人假設有1000個好友,每個表也就1000條數據,相對於資料庫來說,這個存儲量是相當小的,沒有發揮到很好的性能。sql server資料庫幾百萬萬條數據是沒問題的。
最後,這樣查詢可能會帶來方面之處,但是如果用到了存儲過程,復雜的聯合查詢等(這些都是在資料庫中常用的),你這樣做就很難完成了。
所以,為何不把這些數據集中到一張表裡面呢?
⑷ 資料庫表設計 QQ好友間的多對多關系
1.用戶表
列:id, 姓名, 等
2.分組表
列:id, 組名, 用戶id
3.好友表
列:id, 好友id, 分組id
示例:
1.用戶1 創建新早卜分組"我的好友"
INSERT INTO 分組表 (組名, 用戶id) VALUES('我的好友陸州穗', 1);
2.用戶1 將 用戶2 添加到"我的好友"
INSERT INTO 好友表 (好友id, 分組id) VALUES(2, (SELECT id FROM 分組表 WHERE 組名='我的好友跡雀' AND 用戶id=1))
3.查詢 用戶1 "我的好友" 分組下的全部好友
SELECT id, 姓名 FROM 用戶表
WHERE id IN(
SELECT id FROM 好友表 JOIN 分組表 ON 好友表.分組id=分組表.id
WHERE 分組表.組名='我的好友' AND 分組表.用戶id=1
)