Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Datenbankdesign:3 Arten von Benutzern, separate oder eine Tabelle?

Was Sie beim Entwerfen von Tabellen berücksichtigen müssen, ist nicht unbedingt, worauf sie Zugriff haben und wie dies ähnlich/unähnlich ist, sondern eher, wie die Benutzerebenen selbst ähnlich/unähnlich sind.

Wenn die Benutzertypen beispielsweise die gleichen Attribute haben (Name, E-Mail, Geburtsdatum usw.), gehören sie zusammen mit einer Spalte, die ihre Berechtigungsstufe angibt, in eine Tabelle.

Dies erleichtert auch das Ändern von Berechtigungsebenen für einen Benutzer, wodurch Sie beispielsweise einen gewöhnlichen Mitarbeiter zu einem Administrator machen können, indem Sie einfach den Datensatz in der Benutzertabelle aktualisieren.

Wenn Lieferanten ein anderer Objekttyp mit anderen Attributen als die anderen beiden sind, können Lieferanten in ihre eigene Tabelle gehören.

Oder noch etwas zu beachten:Sie könnten einen users verwenden Tabelle, die nur sehr begrenzte Informationen über Benutzer aller drei Typen enthält, und wenn die Typen erweiterte Attribute haben, die nicht gut miteinander in Beziehung stehen, können Sie diese in anderen Tabellen mit einem Fremdschlüssel zurück zu den Hauptbenutzern users Tabelle.