Beziehungen
todo
Übersicht
Diese Tabelle stellt dar, wie verschiedene Beziehungsarten im ORM modelliert werden.
Model A | Model B | Link-Model | |
---|---|---|---|
1:1 | ForeignKey -> B | HasOne -> A | |
1:n | ForeignKey -> B | HasMany -> A | |
m:n | LinkedTo -> B | LinkedTo -> A | ForeignKey -> A und B |
Baum | ForeignKey -> A und Tree |
Eager Loading
todo
Kardinalitäten
todo
Dieser Abschnitt dient aktuell nur zur Information. Eventuell wird der ORM zukünftig um eine Funktion erweitert, mit der Beziehungs-Kardinalitäten stärker eingeschränkt werden können.
Notationen
Folgende Tabelle vergleicht die Darstellung von Kardinalitäten in verschiedenen Notationen.
Chen | MC | UML | (min,max) |
---|---|---|---|
1:1 | c:c | 0..1 : 0..1 | (0,1) : (0,1) |
1:c | 1..1 : 0..1 | (0,1) : (1,1) | |
1:1 | 1..1 : 1..1 | (1,1) : (1,1) | |
1:n | c:mc | 0..1 : 0..* | (0,N) : (0,1) |
1:mc | 1..1 : 0..* | (0,N) : (1,1) | |
c:m | 0..1 : 1..* | (1,N) : (0,1) | |
1:m | 1..1 : 1..* | (1,N) : (1,1) | |
m:n | mc:mc | 0..* : 0..* | (0,N) : (0,N) |
m:mc | 1..* : 0..* | (0,N) : (1,N) | |
m:m | 1..* : 1..* | (1,N) : (1,N) |
Kombinationen
Diese Tabelle stellt alle Kombinationen der UML-Notation dar. Aufgrund der diagonalen Symmetrie müssen nur 10 Kombinationen betrachtet werden, bei den restlichen 6 handelt es sich um umgekehrte Richtungen.
0..1 | 1..1 | 0..* | 1..* | |
---|---|---|---|---|
0..1 | 0..1 : 0..1 | 0..1 : 1..1 | 0..1 : 0..* | 0..1 : 1..* |
1..1 | 1..1 : 0..1 | 1..1 : 1..1 | 1..1 : 0..* | 1..1 : 1..* |
0..* | 0..* : 0..1 | 0..* : 1..1 | 0..* : 0..* | 0..* : 1..* |
1..* | 1..* : 0..1 | 1..* : 1..1 | 1..* : 0..* | 1..* : 1..* |