我需要一些幫助來正確設計SQL數據庫。下面是我想:SQL數據庫設計|管理員和組之間的角色關係
**Group A :**
- Alice (Manager)
- Bob
- Carol
**Group B :**
- Dave (Manager)
- Eve
- Mallory
**Group C :**
- Oscar (Manager)
- Trudy
- Isaac
**Group Z**
- Admin (Manager)
- Alice
- Dave
- Oscar
有幾個限制:
1)每個成員都可以看到人們在他們的小組計劃。對於 例子,當Bob登錄時,他可以諮詢Alice和Carole計劃添加到他自己的計劃 。
2)經理可以更新羣組中人員的時間表,但不是他們自己的!所以 Alice可以管理Bob和Carol,Dave可以管理Eve和Mallory,Oscar 管理Trudy和Isaac,最後Admin管理Alice,Dave和 Oscar計劃。
3)已同意愛麗絲能幫助戴夫來管理他的團隊, 所以愛麗絲可以管理夏娃和馬洛裏(但不是戴夫),但除夕和 馬洛裏無法看到愛麗絲的計劃,她仍然屬於A組。
4)管理員是唯一可以更新自己的計劃的經理。此外,他 可以諮詢大家計劃,但只有人在他們的小組可以看到 他規劃(於是,愛麗絲,Dave和奧斯卡基本上)
5)用戶可以在多個組(看愛麗絲,Dave和奧斯卡這 是也在Z組)。當他們登錄時,他們可以選擇諮詢 計劃指定組,因此這不是問題。
我會做這樣的:
TABLE User
id
nom
prenom
login
password
userGroup
TABLE group
id
groupName
groupManager
不過這顯然不會工作,除非我可以設置一個數組作爲groupManager值(我不擅長SQL,但我很肯定這是不可能的,不是嗎?)
有人能指導我什麼,可以讓我達到我所期望的嗎?
最簡單的解決方案是使用不同的groupManager創建新的組條目 – FilipRistic
是的,但是如何讓groupManager訪問更多的組? – Will
例如,您可以在組表中包含三行,如下所示:1,GroupA,Oscar | 2,A組,Alice | 3,GroupB,Oscar – FilipRistic