[英]How to make a User Privacy Table in MYSQL
我正在一個社交網站上工作,在該網站上我有創建群組,事件和朋友列表的想法。 我希望為他的朋友提供用戶隱私,如下所示:
1.用戶可以選擇可以查看其個人信息或不能查看其個人信息的朋友。 2.用戶可以管理哪些人可以看到他的事件和組,哪些人看不到。
我為下面要粘貼的內容設計了一個表結構:
是否應該有任何其他有效的結構,並且可以最大程度地減少數據庫命中率並且不增加數據庫強度。
如果要設計數據庫表,則可能需要閱讀有關規范化的信息: http : //en.wikipedia.org/wiki/Database_normalization
存儲用逗號分隔的ID使得更新這些記錄和防止重復變得困難。 我建議您將allow和deny列拆分為單獨的相關表。 這不會使數據庫變得更加密集,因為您仍然只需要一個查詢,而只是意味着您可能必須具有帶有聯接的查詢。
我建議使用兩個(或三個)表,將用戶+組和權限分開。
用戶/組表可以包含特定於(和隔離的)用戶/組的信息(因此用戶的#為1和2),然后可以為“類型”或“類別”添加一個字段,指出是否用戶或組。 如果您為用戶和組存儲的信息足夠不同,則可以為每個存儲單獨的表。
權限表可以包含任何權限,包括列表中#的4-9(我真的不知道10/11的上下文。)該表還可以用於管理組成員身份。 以下是如何構造權限表的示例:
一些示例條目:
//Same as listing 1338 in user 1337's Allow_Friends Field
1002, 'user', '1337', '1338', 'Allow_Friends', 'True'
//Lists 1337 as a member in group # 43
1003, 'group', '43', '1337', 'Member', 'True'
這些只是幫助您入門的一些示例。 讓我知道這是否有幫助,或者您是否需要我澄清一下:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.