1. 好友列表資料庫設計
3種解決方法,也談談這三種的弊端吧!
方法:
一.每創建一個用戶.自動創建一個該用戶的好友用戶表.每一行的記錄是一個好友記錄.
二.做一個Frient的表,表中有兩列,第一列UID是用戶ID,第二列FID是對應該用戶的好友
三,在用戶信息的表中,有一個欄位10000長度的varchar 里邊用','號分割各個好友的ID
弊端:
一:只適合少量的用戶論壇,如果有100萬個注冊用戶,就得有100萬張好友表,這樣當用戶一多,資料庫會很大!
二:這種方法是給用戶注冊表創建一張好友關聯表,這樣或許是這三種方法中最好的方式了吧,但是注意記得要添加索引,不然查詢起來,數據一多,會非常慢;
三、這樣在程序方面會比較麻煩,先取出來,後添加數據,再update,感覺速度會上不來...........
2. 類似qq加好友的功能資料庫應該怎麼設計比較合理
建議建2個表
個人表user
(id,qq)id
為序列,qq為存渣咐梁放你自己的qq號碼,這樣你有幾個qq號簡汪就有幾列
好友表friend
(id,friend_qq,userid)id同樣為序列,為以後業務擴充做准備,friend_qq
為好友的qq號如運,userid為個人表
user
的id,
這樣2表通過userid連接,
如
select
*
from
friend
b,user
a
where
a.id=b.userid
and
a.qq=?????
就可以查出你的某個qq號對應的所有好友
3. 聊天系統的好友列表資料庫如何設計
關系型資料庫:個人覺得如果是單向好友,直接userid friendid groupname,直接通過userid查詢列表的內容就回行。如果是雙向好答友,添加兩個個欄位,addstatus forme 是否通過添加 好友添加方向。剩下就是userinfo表和messagelist表,非關系型資料庫還真沒想到比較好又科學的方法
4. 關於 QQ 好友資料庫設計
針對sql server資料庫來說(sql server比mysql好一些,比oracle差),如果有一個萬個用戶就一萬張表。資料庫對表數量的支持也是有限制的。
並且創建表需要有相應的級別比較高的許可權,如果每注冊一個用戶就新建一張表,用戶的許可權太高了。
再次,按照你的說法,一個人假設有1000個好友,每個表也就1000條數據,相對於資料庫來說,這個存儲量是相當小的,沒有發揮到很好的性能。sql server資料庫幾百萬萬條數據是沒問題的。
最後,這樣查詢可能會帶來方面之處,但是如果用到了存儲過程,復雜的聯合查詢等(這些都是在資料庫中常用的),你這樣做就很難完成了。
所以,為何不把這些數據集中到一張表裡面呢?
5. QQ 的好友分組功能在資料庫中是怎樣設計的
您好:
簡單畫了一張資料庫關系圖。希望能對您有所啟發。
6. 好友關系資料庫怎麼設計的
好友關系是雙向的:user1 > user2與 user2 > user1是重復的。目前業務很簡單就是好友關系。預想4個欄位解決:id(自增)to_user(添加用戶)
form_user(被添加用戶)relation(用戶關系)0:好友 1:拉黑但是還是想來問問看,想多了解一下相關的思路。
7. ASP.NET網站中好友功能怎麼做,資料庫怎麼設計
做一個表,裡面欄位 會員Id,要添加為好友的會員Id,狀態(是否對方通過審核)。
例:
如當前會員Id為1,目標會員Id為2
當加對方為好友時。寫入:
會兄隱扒員id:1,目標會員Id:2,狀態:未審。同時你可以通過站內信功能通知對方。站內信里可以加鏈接,接受或拒絕。
當對方登錄後,點擊接受,則再次寫入記錄,當前會員Id:2,目標會員:1,狀態:羨昌已審。同時更新前一條記錄。的審核狀態。
如果是攜滾拒絕則刪除對方的添加記錄。就是前面的那個。同時發站內信通知會員1.
在顯示我的好友時,調用出所有審核狀態為通過的記錄即可。
8. 資料庫表設計 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
)
9. 微博 好友關注和推送功能的資料庫設計是怎麼實現的底層設計
我雖然沒參與過微博底層的開發,如果是我設計這個資料庫的話我會用回2張表解決這個答問題
第一張表 用戶信息表, 主要依靠ID主鍵識別用戶
第二張表,關系表, 關鍵col3列 前兩列 分別是 好友源 和 好友目標 ,第三列是 關系狀態
然後加了好友 只要不斷地 在第二張表加入 新行 比如
用戶A,用戶C ,好友
用戶A,用戶B ,黑名單
用戶B,用戶A, 好友
如果是QQ這類 檢索關系時候 0, 1欄位一起搜索ID 就是互為好友
微博這種 就是單向的 關注。
大概就是這樣的模型
可能的問題是用戶過多時候表2可能會非常巨大。檢索速度可能會受影響
用資源換效率的方式
還可以每個用戶一張表
10. 【 資料庫設計】好友關系表該如何去設計
單獨設計一張表
兩個欄位 我的id (local_user_id) 好友的id(remote_user_id) 編號(rela_id)可有可無