1
我參與了一個微型社交網絡的開發,用戶必須能夠建立它們之間的關係,並且對內容擁有權限。舉個例子:我添加一個用戶作爲我的朋友,但這個用戶不允許我看到他/他的所有內容,所以我只能訪問用戶允許的內容(權限)。所以我有一個問題,需要幫助設計這部分的DER。我認爲,在這個表:用戶之間的人際關係
- users (id, name)
- relations_type (id, name, active)
- users_relations (id, id_user_1, id_user_2)
- users_permissions (id, id_relation, id_module, id_user, view, edit, delete)
這導致以下後果:
對每一段關係- 兩行:用戶1>用戶2和用戶2>用戶1,因爲當我搜索(SELECT)我需要知道哪些是用戶1的朋友,哪些是用戶2的朋友。如果我只留下一種方式的關係,那麼我需要一個UNION,並且這種遷移會減慢我的數據庫
這是正確的嗎?如何在CRUD上處理這個問題?我正在使用MySQL和MyISAM表。