Design - Doppelte Usertabelle?

exorior

Neuer Benutzer
Beiträge
3
Hi Leute,

ich bin gerade am Design einer Datenbank für ein privates Projekt.

In meiner Anwendung sollen mehrere Benutzer Mitglieder eines oder mehrerer Administratoren werden.
(Der Benutzer bekommt in der Anwendung dann angezeigt: Ihre Administratoren: xxx)
(Die Administratoren bekommen wiederum ihre Benutzer angezeigt und können deren Detailinfos einsehen)

Aktuell habe ich in meinem Datenbankdesign eine Tabelle "User" und dort eine Spalte "Role" (Admin, User).
Die Usertabelle wird auch zum Login verwendet. (Also Username, pw etc.).

Jetzt hatte ich nachfolgende Überlegung.
1.) Ich erstelle eine neue Tabelle "Login"
2.) Ich erstelle eine neue Tabelle "Admin"
3.) Ich erstelle eine neue Tabelle "User"
4.) Ich erstelle eine neue Tabelle "User_Assign"

Login, 1 - N, Admin
Login, 1 - N, User
Admin, 1 - N, User_Assign
User, 1 - N, User_Assign

Das haut vom Login aber auch iwie nicht hin, da die Logintabelle ja keine N Beziehung hat, daher die pw in den Tabellen User und Admin stehen müssten....

Sry, aber ich stehe gerade echt auf dem Schlauch. Habt ihr eine Idee wie ich das am besten umsetzen kann?

LG
Exorior
 
Werbung:
Was soll denn Login sein? Datenmodelle haben nicht nur Tabellennamen, sondern auch Spalten.
Ich würde mal grob sagen, Du brauchst nur eine Tabelle. Dort nimmst Du eine Selbstreferenz deren Ziel der jeweilige Admin ist.
 
Danke :) habe ich bisher ehrlich gesagt noch nie gebraucht :(
Wenn ich es richtig verstehe, dann könnte meine Logintabelle so aussehen:
ID, Username, Password, Role, Member

Mit einem Join auf die gleiche Tabelle dann die entsprechende Auswertung ziehen.

Allerdings müsste ich dann doch mehrere Spalten für member anlegen, wenn ich mehrere member habe?
Es kann ja vorkommen, dass ein Admin z.B. 20 User hat und ein User 5 Admins.

Sry, ich verstehe es vielleicht auch einfach noch nicht.

Aber danke schonmal für die Hilfestellung!

Grüße
 
* kann ein User mehrere Rollen haben?

Die Zuordnungen User - Admin machst Du über eine separate Zuordnungstabelle, in der die ID's dann als Foreign Keys auf die Usertabelle dienen.
 
Werbung:
eines oder mehrerer Administratoren werden.
Die Sache ist ja schon geklärt. Trotzdem sorry, das habe ich nicht ganz erwischt.
Wenn ein User mehrere Admins haben soll, reicht eine Tabelle nicht mehr, dann braucht wie von @akretschmer geschrieben man eine Zuordnungstabelle.
Allerdings müsste ich dann doch mehrere Spalten für member anlegen, wenn ich mehrere member habe?
Nein! Ich hoffe das Missverständnis ist ebenfalls aufgelöst. Du willst eigentlich niemals eine Menge abbilden, in dem Du dafür immer weitere Spalten anlegst!
 
Zurück
Oben