Databases Reference
In-Depth Information
Der Zugriff auf die Attribute des eingebetteten Typs erfolgt nunmehr im Vergleich
zum Join bei der relationalen Modellierung über die »Punktnotation«. Wenn wir
von obigem Beispiel ausgehen, erfahren wir den Namen des Ausleihers über den
Ausdruck
buch.ausleiher.name
Die Aufnahme eines Referenztyps in eine Tabelle setzt die selbständige Existenz
des referenzierten Typs mit eigenem Extent 10 (Objekttabelle) voraus. Eine Wertzu-
weisung kann auch nur dann erfolgen, wenn die gewünschte Instanz des referen-
zierten Typs in der Datenbank vorhanden ist. So wird in der objektorientierten
Welt die referenzielle Integrität realisiert.
Im Unterschied dazu ist die Einbettung von Tupeln in eine Objekttabelle über die
Ty p z u w e i s u n g
freunde otyp_person MULTISET
so zu verstehen, dass die Personen, die in dieses Attribut eingetragen werden, nur
als Attributwerte des Tupels existieren. Dies entspricht dem Konzept des abhängi-
gen Entitätstyps, das wir in Kapitel 3.2 vorgestellt haben. Sie werden auch nicht
getrennt erfasst, sondern bei der Instanziierung des sie enthaltenden Typs zusam-
men mit den anderen Attributwerten angegeben.
9.3 Objektrelationales Modell der
Versanddatenbank
Es folgen nun Beispiele für die im vorigen Abschnitt vorgestellten Modell-
elemente. Wir realisieren das in folgendem UML-Diagramm wiedergegebene
objektorientierte Modell der Versand-Datenbank. 11 Die Umsetzung der Beispiele
folgt nicht dem Standard, wir haben sie mit einem Oracle9-DBMS erstellt und
getestet.
Es gibt eine Reihe von Abweichungen zwischen Oracle und dem Standard 12 ; deren
bedeutendste sind:
Die Kollektionstypen, die zur Zeit unterstützt werden, sind TABLE (entspricht
MULTISET(ROW)) und VARRAY . Ein VARRAY ist im wesentlichen ein Array mit einer
jeweils vorgegebenen Maximalzahl von Komponenten; es kann aber auch
weniger Komponenten enthalten.
10 Ein Extent für einen Typ ist an eine Objekttabelle gebunden. Typen ohne Extent sind auch mög-
lich; dieses ist z.B. sinnvoll für einen Typ für Adressen.
11 UML wird in Kapitel 3 beschrieben.
12 Siehe auch [CHRS98, S. 420ff.].
 
Search WWH ::




Custom Search