Ich habe Useraccount Tabelle und andere Tabellen wie Mitarbeiter, Studenten usw. Ich möchte wie eine Prüfung haben, der einen Schüler Datensatz erstellt oder den einen bestimmten Mitarbeiterdatensatz erstellt. Ist es empfehlenswert, UserAccountId als Fremdschlüssel in allen anderen Tabellen wie Employee, Student usw. zu verwenden? Ich benutze Winterschlaf, wenn ich so mapped, muss ich eine zu viele Beziehung zwischen UserAccount und allen anderen Klassen aufrechterhalten, so dass Code zunimmt und für mich ist das eine Last.Ist es eine gute Vorgehensweise, UserAccount-Tabelle mit allen anderen Tabellen in SQL Server zuzuordnen?
Antwort
Nun, es bricht alle Normalisierungsregeln. Habe stattdessen eine Link/href-Tabelle. UserAccountID, EmployeeID (NULL), StudentID (NULL). Habe eine solche massive verknüpfte Tabelle. Die Fremdschlüssel müssen neben UserAccountID (Primärschlüssel und Fremdschlüssel) nullwertfähig sein.
"Gute Angewohnheit/Praxis" ist subjektiv.
Wenn die Geschäftsdomäne die Tatsache enthält, dass die Person, die eine Entität erstellt hat, eine sinnvolle Information ist und dies wahrscheinlich eine reguläre Anforderung von Endbenutzern ist, dann fügen Sie den Tabellen ein Attribut "createdBy" hinzu. Klassen ist in der Tat gute Praxis.
Der beste Weg, um zu wissen, ob dies zutrifft, besteht darin, den Product Owner zu fragen, ob sie einen Bildschirm benötigen, der "alle von Benutzer x erstellten Mitarbeiter" anzeigt. Wenn sie "Nein, nur wenn etwas schief läuft" sagen, haben Sie eine Audit-Anforderung; Wenn sie "Ja, wir benutzen das regelmäßig" sagen, ist dies ein wesentlicher Bestandteil Ihres Geschäftsbereichs.
Sie können feststellen, dass Ihre Benutzer nicht nur wissen möchten, wer eine Zeile erstellt hat, sondern auch, wer sie geändert hat. In diesem Fall gibt es ähnliche Fragen zu SO.
- 1. Ist es eine gute Idee, für jeden Client in SQL Server eine andere Datenbank zu erstellen?
- 2. SQL Server: Ist es möglich, in zwei Tabellen gleichzeitig einzufügen?
- 3. Ist eine DLL kompatibel zu allen Datenbanken eine gute Idee
- 4. Ist es eine gute Vorgehensweise, zu definieren, welche Daten in den Controller geladen werden sollen?
- 5. Ist es möglich, eine einzelne Entität mit mehreren Tabellen mithilfe von JPA zuzuordnen?
- 6. Gibt es eine Standardübung zum Synchronisieren von SQL Server-Tabellen?
- 7. SQL Server, wie eine gute strukturierte Datenbank mit verschiedenen Tabellen machen
- 8. Was ist die beste Vorgehensweise für eine Such-SQL-Abfrage?
- 9. Ist eine einzelne logback.xml-Datei für mehrere Anwendungen eine gute Vorgehensweise?
- 10. Ist es eine gute Programmierpraxis, die von realloc() zurückgegebene Adresse demselben Zeiger zuzuordnen?
- 11. Temporäre Tabellen in SQL Server?
- 12. Ist es eine gute/akzeptable Vorgehensweise, Variable als Schnittstellentyp zu deklarieren?
- 13. De normalisierte SQL Server-Tabellen
- 14. Ist es eine gute Vorgehensweise, Cookies/localStorage-Daten beim Abmelden für ungültig zu erklären?
- 15. Ist es eine gute Vorgehensweise, Fehler im Exception-Konstruktor zu protokollieren?
- 16. SQL-Tabellen Beitritt bekommen anderen Tabellen Daten
- 17. ist es möglich, eine Ansicht von einem SQL Server auf einen anderen zu replizieren?
- 18. Ist es eine gute Vorgehensweise, Authentifizierungs-/Autorisierungsfehler mithilfe von Ausnahmen zu behandeln?
- 19. wie Tabellen beitreten sql server
- 20. Passende zwei Tabellen in SQL Server 2008 mit T-SQL
- 21. Was ist eine gute Vorgehensweise, um doppelte Funktionen in React.js mit dem Format 'this.setState' zu vermeiden?
- 22. SQL Verbindungsdaten aus anderen Tabellen
- 23. Ist es sicher, nullptr einer Funktionszeigervariablen zuzuordnen?
- 24. Ist es eine gute Praxis, Variablen möglichst "final" zu deklarieren?
- 25. SQL Server - mehrere Tabellen mit Cursors duplizieren
- 26. SQL Server und Tabellen? Ungültiges Objekt
- 27. suchen Mehrere Tabellen mit SQL Server
- 28. importieren Tabellen von einem anderen Server von SQL
- 29. SQL Server-Update mit mehreren Tabellen
- 30. ist eine gute Praxis