2017-06-06 4 views
0

Ich richte Beziehungen zwischen Modellen ein und frage mich, ob es schadet, eine Bridge-Tabelle für eine Eins-zu-viele-Beziehung zu verwenden?Eins-zu-viele-Verwendung der Bridge-Tabelle

heißt Dies sind einige der Modelle

  • Benutzer
  • Teams
  • Gruppe

Jeder Nutzer oder-nicht ein Team oder eine Gruppe haben kann. Wäre es besser, NULL-fähige FKs im Benutzermodell für team_id, group_id zu haben oder verwenden Sie Bridge-Tabellen team_user, group_user akzeptabel? (Es ist wenig wahrscheinlich, dass dies jemals eine Viele-zu-Viele-Beziehung sein wird)

Wäre es irgendwelche negativen Auswirkungen bei der Verwendung einer Bridge-Tabelle für Eins-zu-viele?

Antwort

1

Eine "Bridge-Tabelle" wird normalerweise verwendet, um n: n zu modellieren. Kann ein Nutzer in Ihrem Fall in mehreren Teams oder Gruppen sein? Wenn ja, ist eine Bridge-Tabelle, was Sie wollen. Wenn nicht, würde ich mit NULL-FK gehen.

Wenn Sie die Bridge-Tabelle für Eins-zu-viele wünschen, sollten Sie einen eindeutigen Index verwenden, um sicherzustellen, dass Sie nur "Eins" haben.

Jetzt sind Nullen selbst Gegenstand einiger Religionskriege. Es gibt gute Argumente, um sie zu vermeiden. In diesem Fall denke ich, dass sie in Ordnung sind - das bedeutet 0 (fk ist NULL) oder 1 (fk zeigt auf das Team oder die Gruppe, der der Benutzer angehört).

Verwandte Themen