strukturierter Datentyp

Die strukturierter Datentypen haben verschiedene Namen. Sie werden auch abstrakte Datentypen genannt oder auch Strukturdatentypen. Sie zählen neben den DISTINCT-Datentypen zu den benutzerdefinierten Datentypen. Sie sollen das Konzept des Objekttyps aus der Objektorientierung im objektrelationalen Modell realisieren. Analog wie beim Objekttyp besitzt ein strukturierter Typ Attribute, deren Instanzen die Eigenschaften des Objekts darstellen, und Methoden, die das Verhalten beschreiben. Ferner genügen sie dem Prinzip der strengen Typisierung, woraus sich die Notwendigkeit ergibt, dass CAST-Funktionen und insbesondere benutzerdefinierte CASTs für Typkonvertierungen definiert und angewendet werden müssen, sowie benutzerdefinierte Ordnungen für den Vergleich strukturierter Werte. Den folgenden Prinzipien der Objektorientierung sollen die strukturierten Typen genügen:

  • Strukturierung meint die semantische Einheit zwischen komplexen Datenstrukturen und zugehörigen Methoden mit den Zielen einer besseren Modularisierung und Wartbarkeit.
  • Kapselung meint den ausschließlichen Zugriff auf die Objekte über die Methoden und dient dem Zweck der Trennung zwischen Schnittstelle und Implementierung.
  • Zustandsunabhängige Objektidentifikation meint die Trennung zwischen Objektwerten und der Objektidentifikation mit dem Ziel einer unveränderlichen und eindeutigen Objektreferenz.
  • Vererbung meint die Vererbung von Attributen und Methoden des Supertyps an seinen Subtyp mit der Möglichkeit des dynamischen Bindens und des Überschreibens.
  • Substituierbarkeit meint die Möglichkeit, ein Objekt des Subtyps überall dort verwenden zu können, wo ein Objekt des Supertyps erwartet wird, wodurch sich heterogene Kollektionen aufbauen lassen.

Erstellt werden sie in SQL mittels des CREATE-TYPE-Befehls und bei Oracle ebenfalls in einem leicht differierenden CREATE-TYPE-Befehl?. Wichtig für ihre Definition sind die verfügbaren Typkonstruktoren.


Quellen:

  • ANSI/ISO/IEC 9075-1:2003. Part 1 "SQL/Framework", ISO International Organization for Standardization / ANSI American National Standards Institute, September 2003
  • ANSI/ISO/IEC 9075-2:2003. Part 2 "SQL/Foundation", ISO International Organization for Standardization / ANSI American National Standards Institute, Dezember 2003
  • Türker, Can/Saake, Gunter: "Objektrelationale Datenbanken", dpunkt-verlag, Heidelberg, 2006, ISBN 3-89864-190-2

Kategorien: Objektrelationale DB, S