
|
Mit dem Objekttyp TYPE besteht die Möglichkeit, eigene Objekttypen zu erstellen. Der Objekttyp kann sowohl Funktionen und Prozeduren, als auch einfache Records und Arrays beinhalten. Abbildung 1 zeigt die Erstellung eines einfachen Objekttyps. Der Objekttyp TYPE ist darüber hinaus die Basis der Objektorientierung unter Oracle.
Informationen zu dem Objekttyp TYPE findet man in folgenden Data Dictionary Views:
Der Objekttyp TYPE BODY ist mit dem Typ TYPE eng verknüpft, ähnlich wie auch der Typ Package Body mit dem Typ Package verbunden ist. Die Objektspezifikation findet in dem Objekttyp TYPE statt. Dort müssen, wie in Abbildung 2 gezeigt, alle Attribute und Methoden initialisiert und bekannt gemacht werden. Im TYPE BODY (Objektrumpf) werden alle Methoden des Objektes implementiert (siehe Abbildung 3). Methoden können Funktionen und Prozeduren sein.
Anhand dieser Objekttypen ist es z. B. möglich, Tabellen mit den Objektspezifikationen anzulegen (siehe Abbildung 4). Mit der Deklaration der Objekte steht eine Konstruktormethode zur Verfügung, die für die Initialisierung der Objekte genutzt wird (siehe Abbildung 5). Die im TYPE BODY deklarierten Methoden werden auf diese erstellten Objekttypen angewandt. Abbildung 6 zeigt die Anwendung der Funktion fct_abtinfo. Wichtig ist hier die Angabe des Tabellen-Alias und das Voranstellen an die Funktion, da diese Funktion sonst nicht bekannt ist.
An dieser Stelle wird kurz der Objekttyp UNDEFINED vorgestellt. Oracle vergibt den Typ UNDEFINED als Objekttyp, wenn Objekte keinem anderen Typ zugeordnet werden können.
Eine View ist ein Datenbankobjekt, das eine Benutzersicht auf bestehende Tabellen oder wiederum auf Views selbst bietet. Bei der Erstellung (siehe Abbildung 7) wird nur die SELECT-Anweisung, die die Views definiert, gespeichert. Die eigentlichen Daten werden aus den Datentabellen gelesen. Views vereinfachen zum einen den Zugriff auf komplexe Abhängigkeiten im Datenbankschema und zum anderen können sie dazu dienen, bestimmten Benutzern nur bestimmte Daten sichtbar zu machen.
Die Data Dictionary View dba_views liefert Informationen über Views.
Zum Abschluss der Reihe stellen wir noch kurz das Package dbms_metadata vor. Mit den zur Verfügung gestellten Prozeduren und Funktionen erhält man Informationen über Metadaten der Objekte.
Das Package wird an dieser Stelle am Beispiel der Funktion get_ddl erläutert. Diese Funktion liefert ein komplettes DDL-Statement des gewünschten Objektes zurück. Hierzu werden der Objekttyp, der Objektname, das Schema, die Version, das Modell und die zu transformierende Ausgabe als Parameter übergeben. Mit dieser Funktion (siehe Abbildung 8) können alle DDLs der in dieser Reihe vorgestellten Objekttypen analog ausgegeben werden.
Ole Breimann (info@ordix.de).