Visa ett inlägg
Oläst 2014-02-21, 08:36 #1
Darkmagic Darkmagic är inte uppkopplad
Nykomling
 
Reg.datum: Mar 2011
Inlägg: 34
Darkmagic Darkmagic är inte uppkopplad
Nykomling
 
Reg.datum: Mar 2011
Inlägg: 34
Standard MSSQL - Key/Value pair vs relations tabeller

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
Darkmagic är inte uppkopplad   Svara med citatSvara med citat