2012-08-12 31 views
2

我將我的C++程序連接到MySQL服務器,並且我有點困難。將用戶關聯到多個其他用戶

每個用戶都有一個聯繫人/好友列表(當然)擁有其他用戶。我不確定如何實際將用戶與數據庫中的其他用戶相關聯。什麼樣的數據類型可以用於這樣的任務?

我能想到的唯一可能就是讓文本字段中的數字以空格分隔,並在用戶每次連接時解析它。但由於某種原因,這對我來說聽起來很糟糕,所以我不確定。

您能推薦些什麼?謝謝。

回答

1

我能想到的唯一可能就是讓文本字段中的數字以空格分隔,並在用戶每次連接時解析它。但由於某種原因,這聽起來很不對勁

這聽起來對我來說也是一個壞主意。

你要一個多一對多的關係:

contact 
user friend 
1  2 
1  3 
1  5 
2  4 
3  1 

注意,在聯繫人列表中,你可能要存儲每個聯繫人列表條目的附加屬性。例如,用戶可能希望更改他們自己的聯繫人列表中顯示的姓名。例如,如果用戶1想要將用戶3的名稱顯示爲「foo」,則表格可能如下所示。

contact 
user friend displayName 
1  2  NULL 
1  3  'foo' 
1  5  NULL 
2  4  NULL 
3  1  NULL 

這裏NULL意味着用戶尚未指定它們的接觸優選的顯示名稱,所以該聯繫人的姓名應該顯示。

+0

太棒了! :) 非常感謝你。 – MasterMastic 2012-08-12 10:11:24

相關問題