PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Modelowanie tabel bazy danych użytkowników, grup i członkostwa

wygląda całkiem nieźle.

Wyświetlasz zatwierdzony_by w 2 tabelach. Jeśli zachowasz tabelę MembershipStatus, to tam powinna należeć. także -nazwa 'approved_by' implikuje status 'approved', który może, ale nie musi istnieć. możesz pomyśleć o innej nazwie...

powinieneś również mieć tabelę, która prawdopodobnie identyfikuje, którzy użytkownicy są administratorami, dla których grup. w ten sposób możesz zakodować zabezpieczenia po stronie bazy danych dla tego, kto może zatwierdzać, a także przechowywać, kto faktycznie zatwierdził.

nie jestem też wielkim fanem przechowywania historii audytu w tabeli, jak pokazujesz. Użyj wbudowanej bazy danych audytu lub przenieś ją do innej tabeli, aby zapisać historię audytu.

wreszcie id i userid wydają się zbędne. idź z identyfikatorem użytkownika. (podobne na innych stołach)




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Postgresql regexp_replace

  2. Jak wyświetlić kod CREATE VIEW dla widoku w PostgreSQL?

  3. Jak włączyć profiler funkcji PostgreSQL?

  4. Apache Spark:połączenie JDBC nie działa

  5. Czy istnieje sposób na indeksowanie w postgresie w celu szybkiego wyszukiwania podciągów?