Hallo,
warum Integer und nicht Boolean ?
Einen Record würde ich nicht nehmen.
Klar ist am Anfang noch nicht abzusehen,
wie viele Rechte es geben wird,
aber besser man sorgt vor.
Ich habe das so gelöst
Tabelle: User
Id Integer
Name VarChar(x)
(*
Optional
Tabelle: Rights
Id Integer
Name VarChar
*)
Tabelle: UserRights
Id Integer ("Autoinc")
UserId
RightId
Die Rechte sind durchnumeriert (Konstanten).
Das hat 2 Vorteile:
- Erweiterbar, neue Rechte bekommen einfach die nächsthöhere Nummer,
ohne das an der
DB rumgeschraubt werden muss
- In
UserRights stehen nur gesetzte Rechte,
hat der User ein Recht nicht, steht nichts in der Tabelle
Es werden damit nur die gesetzten Rechte geladen -> Performance
Heiko