2013-03-03 70 views
1

n00b mysql問題:每個最終用戶帳戶應該在mysql中獲取他們自己的表嗎?

如果我有一個包含所有最終用戶名和Id的表,並且我想跟蹤每個用戶的連接,那麼每個最終用戶都應該擁有自己的表嗎?

例如

最終用戶A連接到用戶B,用戶C和用戶D;應該有一個單獨的表格,僅用於用戶A,其具有一個列表:

User B | 84746 
User C | 94837 
User D | 03265 

回答

1

我強烈建議不要這樣做 - 不要創建多個需要查詢結果的表(例如,來自(CONCAT(...))的SELECT *)。相反,創建最終用戶映射與他們連接的表:

id (primary key) | endUser | connectedUser | connections 
--------------------------------------------------------- 
1    | User A | User B  | 84746 
2    | User A | User C  | 94837 
3    | User A | User D  | 03265 

指數快速訪問終端用戶列,你應該設置。

1

不,請使用一個表格。這就是數據庫的用途:-)否則,你會得到大量的表(如果你有很多用戶)。即使你不期望很多用戶,這也不是一條路。

1

我不知道如何管理可變數量的表格,但是你會失去所有關係。您應該添加一個關係表:

CREATE TABLE Relationships (
    userOwnerID, 
    userFriendID 
); 
相關問題