Benutzer, Kunden, - admin-Konto in 3 verschiedenen Tabellen?

In meinem web-Anwendung habe ich drei verschiedene Arten von Konten.

  • Nutzer: für die Nutzung der web-Anwendung kostenlos
  • Kunden: für Werbung und bekommen ein Firmenlogo
  • Admin: für die Bearbeitung und das löschen von Sachen

Sollten all diese drei werden in separaten Tabellen oder in einem mit einer Spalte namens "account_type" wo kann ich markieren Sie es als Nutzer, Kunde oder Admin?

Was sind die vor-und Nachteile für beide? Gibt es ein best practice für diese?

Dank

  • Ich denke, es wäre nützlich, zu bleiben, wie die use cases beziehen sich auf andere Dinge in Ihrem Datenmodell. I. e. was ist die Verbindung zwischen Kunden und Bilder, User - /Admin-Zugang.
  • Ich würde sagen, eine Tabelle, aber wenn es gibt eine Menge verschiedener Attribute für jede Rolle, sollten Sie sich Gedanken über verschiedene Tabellen. Sie können markieren Sie die Benutzer mit einer id/enum, nennen wir es mal-Rolle. Rolle=1 wäre ein Benutzer, Rolle=2 wäre ein Kunde und Rolle=3 wäre ein admin. So können Sie leicht erweitern Sie Ihre Rollen mit einer foreign key-Konstrukt (wie David Stratton sagte).
Schreibe einen Kommentar