8.4.3 Übertragung von Beziehungstypen
(1|12)
•
Ein 1:1-Relationship-Typ wird i.allg. nicht zu einer eigenen
Relation.
Information wird an eine der beiden den betroffenen Entity-Typen
entsprechenden Relationen "angehängt".
Rel-Modell
•
25.01.2002
1:1 - Beziehungen
1
8.4.3 Übertragung von Beziehungstypen
(2|12)
1:1 - Beziehungen
Rel-Modell
25.01.2002
Beispiel:
2
8.4.3 Übertragung von Beziehungstypen
(3|12)
•
Ein 1:n-Relationship-Typ wird i.a. nicht zu einer eigenen
Relation.
Information wird an die Relation "angehängt", die dem EntityTyp an der mit n beschrifteten Kante entspricht.
Rel-Modell
•
25.01.2002
1:n - Beziehungen
3
8.4.3 Übertragung von Beziehungstypen
(4|12)
1:n – Beziehungen
Rel-Modell
25.01.2002
Beispiel: „Artikel gehört zu Warengruppe“
4
8.4.3 Übertragung von Beziehungstypen
(5|12)
n:m - Beziehungen
Relation enthält die Schlüssel der beteiligten Entity-Typen als
Attribute und zusätzlich die Attribute des Relationship-Typs.
25.01.2002
•
Aus n:m-Relationship-Typ wird eine zusätzliche Relation.
Rel-Modell
•
5
8.4.3 Übertragung von Beziehungstypen
(6|12)
n:m - Beziehungen
Rel-Modell
25.01.2002
Beispiel:
6
8.4.3 Übertragung von Beziehungstypen
(7|12)
Rekursive Beziehungen
B
E
(z ,w)
25.01.2002
(x, y)
analog zu normalen 1:1 -, 1:n - und n:m - Beziehungen
Rel-Modell
(die Namen hinzugefügter Attribute werden um den Rollennamen
ergänzt)
7
8.4.3 Übertragung von Beziehungstypen
(8|12)
Beziehungen vom Grad > 2
x1
E1
25.01.2002
E2
x2
B
x3
Ek
B: <E1, ..., Ek / Az>,
r1:R1 mit R1 = (A1 |  1 ), (P1 ist Pr.schlüssel)  1,
rk: Rk mit Rk = (Ak |  k ), (Pk ist Pr.schlüssel)   k

...,
Rel-Modell
B wird eigenes Relationsschema rB: RB:
8
8.4.3 Übertragung von Beziehungstypen
(9|12)
r1: R1 ,..., rB : RB ,
– rB:RB mit RB = (P1 ... Pk Az | B),
25.01.2002
Beziehungen vom Grad > 2
– Fremdschlüssel:
rB.P1  r1.P1,... , rB.Pk  rk.Pk
 B:
Schlüssel ergibt sich aus der Vereinigung der
Primärschlüssel Pj der Relationsschemata, für welche die
entsprechenden Entity-Typen (gemeinsam) einen Schlüssel
von B darstellen
Rel-Modell
– Falls 1 die Mindestkardinalität von Ej bzgl. B ist
zusätzlich rj.Pj  rB.Pj
9
8.4.3 Übertragung von Beziehungstypen
(10|12)
Beispiel 8-15: Datenmodel eines Reiseveranstalters
Strasse
Str_Nr
P_Vorname
Person
Tel_Nr
Umsatz
Kunde
(0,*)
(0,*)
(0,*)
bucht
In Verzug
(1,1)
R_Name
(0,*)
von
Zahlungsverzug
Reiseleiter
Gehalt
(0,1)
Reise
Verz_Datum
bis
leitet
25.01.2002
PLZ
R_Typ
RechnungsNR
Verz_Betrag
Preis
Rel-Modell
P_NAME
P_Nr
10
8.4.3 Übertragung von Beziehungstypen
(11|12)
•
Person  person: (P_NR, P_Vname, P_Nname, Strasse,
Str_Nr, PLZ, Tel_Nr)
•
Reise  reise: (R_Name, von, bis, Preis, R_Typ)
25.01.2002
Starke Entity-Typen:
•
Kunde  kunde: (P_Nr, Umsatz),
kunde.{P_Nr}  person.{P_Nr}
•
Reiseleiter  rleiter: (P_Nr, Gehalt),
rleiter.{P_Nr}  person.{P_Nr}
•
Zahlungsverzug  zverzug: (P_Nr, RechnungsNr,
Verz_Datum, Verz_Betrag),
zverzug.{P_Nr}  kunde.{P_Nr}
NULL-Werte sind nicht erlaubt.
Rel-Modell
Weak Entity-Typen und Unterentity-Typen:
11
8.4.3 Übertragung von Beziehungstypen
(12|12)
•
„in Verzug“ wurde schon durch den Weak Entity-Typ zverzug
realisiert
•
„leitet“: Ergänzen von Reise um die Personennummer des
Reiseleiters
 reise: (R_Name, von, bis, Preis, R_Typ, P_Nr)
reise.{P_Nr}  rleiter.{P_Nr},
25.01.2002
1:n- Beziehungen
NULL-Werte sind erlaubt.
•
„bucht“  buchung: (P_Nr, R_Name, von, bis),
buchung.{P_Nr}  kunde.{P_Nr}
buchung.{R_Name, von, bis}  reise.{R_Name, von, bis}
Rel-Modell
m:n-Beziehungen
12

8.4.3 Übertragung von Beziehungstypen