Hej,
Skulle någon vilja hjälpa mig som inte är så duktig på databaser om vilket man bör göra i följande läge:
Vi har ett användarsystem där vi har grupper och en användare kan tillhöra flera grupper och sedan i sin tur så kan alla moduler dela sin data till grupper.
Exempel:
Användare -> tillhör grupp 1-3 + 5.
Dokument1 delas till grupp 1 + 4.
Formulär1 delas till grupp 2 + 5
och låt säga att vi har 10 andra moduler som har denna rättighets struktur.
Nu till frågan så har vi en tabell som innehåller Groups.
Efter det så har vi 2 sätt att gå det ena är att vi skapar en generisk tabell som heter något med GroupRights som ser ut såhär:
PK ObjectId (int) - Denna innehåller Idt från ObjectTypes tabell (exempel UserID om ObjectType är User)
PK GroupId (int) FK till Id i Groups tabellen
PK ObjectType (int) - Denna anger om det är en användare/dokument/formulär etc etc..
Vi kan också bygga det såhär:
UsersToGroups tabell
PK UserId - FK till Users.Id
PK GroupId - FK till Groups.Id
DocumentsToGroups tabell
PK DocumentId - FK till Documents.Id
PK GroupId - FK till Groups.Id
etc etc...
Vad skulle ni säga är bäst?
Vad är pros/cons?
-Jag kan ha gjort stora fel här, jag är som sagt inte så värst bra på databaser.
Tacksam för svar