Objekt-relationales Datenbanksystem Oracle

Ähnliche Dokumente
Objektorientierung unter Oracle richtet sich einerseits nach objekt-orientierten Programmiersprachen wie Java,

Objektrelationale Datenbanken. Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München

Objektorientierung in Oracle

ORACLE9i: Objekt-Relationale Datenbanken

Objektorientierte PL/SQL-Entwicklung Ein Erfahrungsbericht aus Sicht von JAVA-Entwicklern

Strukturierte Objekttypen

Kapitel 6 Objektrelationale Datenbanken

Funktionen. Überblick über Stored Functions. Syntax zum Schreiben einer Funktion. Schreiben einer Funktion

Kapitel 5. Objektrelationale Datenmodell- und Spracherweiterungen kommerzieller Datenbanksysteme. Objektrelationale Erweiterungen in Oracle9i

Objektrelationale Datenbanken

Oracle 12c: Neuerungen in PL/SQL. Roman Pyro DOAG 2014 Konferenz

Moderne Datenbankkonzepte

Arbeit mit zusammengesetzten Datentypen

Objektrelationale, erweiterbare Datenbanken WS 04/05

4. Objektrelationales Typsystem Kollektionstypen. Nested Table

Kapitel 6 Objektrelationale Datenbanken. Folien zum Datenbankpraktikum Wintersemester 2010/11 LMU München

Objektorientierte PL/SQL- Programmierung

Oracle: Abstrakte Datentypen:

Oracle9i Designer. Rainer Willems. Page 1. Leitender Systemberater Server Technology Competence Center Frankfurt Oracle Deutschland GmbH

Erzeugen von Constraints

Erzeugung und Veränderung von Tabellen

Relationales Datenbanksystem Oracle

Objekttabelle. Objekttabellen (Fort.)

<Insert Picture Here> Security-Basics. Privilegien, Rollen, SQL und PL/SQL - inkl. 12c-Update. Carsten Czarski, ORACLE Deutschland B.V. Co.

Logischer Entwurf und Dokumentation objektrelationaler Oracle Datenbanken

XML in der Oracle Datenbank "relational and beyond"

Bei Kaum noch wartbar -> shortcut badview. Bei Ausführungspläne kippen -> shortcut badviewplan

Prakt. Datenbankprogrammierung. Sommersemester Was sind Constraints? I,11: Verwendung von Constraints. Festlegung von Constraints

OBJEKTORIENTIERTE ENTWICKLUNG IN DER DATENBANK. Anja Hildebrandt buw Unternehmensgruppe

Objektorientierte PL/SQL-Programmierung für RDBMS

Abfragen (Queries, Subqueries)

Objektrelationale und erweiterbare Datenbanksysteme

Grundlagen von Datenbanken

Introduction to Data and Knowledge Engineering. 6. Übung SQL

Objekt-Relationale (OR) Datenbanken

Versehen Sie jedes Aufgabenblatt/-blätter mit Ihrem Namen und geben es mit ab! Seite 1

Username and password privileges. Rechteverwaltung. Controlling User Access. Arten von Rechten Vergabe und Entzug von Rechten DBS1 2004

Java Tools JDK. IDEs. Downloads. Eclipse. IntelliJ. NetBeans. Java SE 8 Java SE 8 Documentation

Objektorientierte Softwareentwicklung mit Oracle PL/SQL

Relationales Modell: SQL-DDL. SQL als Definitionssprache. 7. Datenbankdefinitionssprachen. Anforderungen an eine relationale DDL

Philipp Cimiano AG Semantische Datenbanken und Wissensverarbeitung

Kuriositäten in der Oracle-Datenbank

Foreign Keys. MySQL 4, 5. Kapitel 16: Fremdschlüssel. Marcel Noe

string: Beispiele: Test, test, `Seitentitel: ${document.title}`

Chapter 2 Object-Relational Views and Collection Types

Neue Welten: Externe Daten mit APEX nutzen

Oracle Virtual Private Database

Art der Info: Technische Background Info Teil 3 (April 2002)

Modul Datenbanksysteme 2 Prüfung skizzenhaft SS Aug Name: Note:

5. Objekt-relationale Systeme 5.1. Erweiterungen des Relationalen Modells 5.2. SQL-Erweiterungen 5.3. MM-DB

Oracle und LDAP. Zugriff auf LDAP-Daten aus einer Oracle-DB. Martin Busik

Schnellübersichten. SQL Grundlagen und Datenbankdesign

Oracle SQL. Seminarunterlage. Version vom

Oracle 10g Einführung

Oracle Indexing Primer

Datenbanken und Informationssysteme II

Historisierung und Versionierung

Übung Datenbanken in der Praxis. Datenmodifikation mit SQL

Hochschule Karlsruhe Technik und Wirtschaft Fakultät für Informatik und Wirtschaftsinformatik

Übung PL/SQL Trigger Lösungen

SQLdetective - Ein günstiges Tool unter die Lupe genommen

4 Packages 5. 5 Cursors 6. 7 Triggers Triggers Updateable Views Materialized Views... 8

Komplexe XML-Dokumente über XSU und Objekt-Typen aus der Datenbank generieren

Inhalt. Ein Einführung in die Nutzung von SQL-Datenbanken am Beispiel Oracle. Daten und Tabellen - ein Beispiel. Daten und Tabellen - Normalisierung

SQL mit ORACLE. Wolf-Michael Kahler

Logging und Debugging. Gerd Volberg OPITZ CONSULTING Deutschland GmbH

OO Programmiersprache vs relationales Model. DBIS/Dr. Karsten Tolle

Objektrelational: Einbettung der schwachen Entitätsmenge als tablewertiger Typ (NF2)

Designer Development Kit (DDK)

Kurzanleitung ERwin V Kurzanleitung Erwin

[ SQL] Wissen, das sich auszahlt

Inhaltsverzeichnis. Bernd Müller, Harald Wehr. Java Persistence API 2. Hibernate, EclipseLink, OpenJPA und Erweiterungen ISBN:

Oracle native json Support. Erste Schritte

Aufbau eines dynamischen ETL Frameworks auf Basis eines PL/SQL Codegenerators

SQL. Datendefinition

Oracle Database Vault Beispiele zur Benutzung

Kapitel 13: Objekt-Relationale Datenbanken

Geschäftslogik in die Datenbank Umstellung eines Kernbanksystems

dbis Praktikum DBS I SQL Teil 2

Relational and Beyond : Oracle9i, die native XML Datenbank

4. Objektrelationales Typsystem

SQL. DDL (Data Definition Language) Befehle und DML(Data Manipulation Language)

Datenbanken und Informationssysteme II

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #5. SQL (Teil 3)

Praktische SQL-Befehle

Seminar 2. SQL - DML(Data Manipulation Language) und. DDL(Data Definition Language) Befehle.

Professioneller Einstieg in Oracle Database 11g SQL

Einführung SQL Data Definition Language (DDL)

PL/SQL. Deklaration von Variablen. Inhalt. PL/SQL Block Struktur. PL/SQL Block Struktur

Ergänzungen zur Vorlesung Informationssysteme WS 2000/01

Probeklausur Datenbanken und Informationssysteme II

7. Datenbankdefinitionssprachen

6. Datendefinition in SQL

Im Folgenden möchten wir Ihnen einige Beispiele aufzeigen, wie ALTER TABLE gemäß SQL92 verwendet wird:

NoSQL mit Postgres 15. Juni 2015

Kapitel 14. Objekt-relationales Mapping (ORM) mit Hibernate bzw. Java Persistance API (JPA) Prof. Dr. Wolfgang Weber Vorlesung Datenbanken

Datenschutz: Zugriffsrechte in SQL

6. Datendefinition in SQL

Transkript:

Objekt-relationales Datenbanksystem Oracle 1 Benutzerdefinierte Datentypen 1.1 Unvollständige Typen create-incomplete-type OR 1.2 Kollektionstypen REPLACE TYPE type-name create-varray-type OR TYPE type-name REPLACE IS VARRAY ( limit ) AS VARYING ARRAY OF datatype create-nested-table-type OR TYPE type-name REPLACE IS TABLE OF datatype AS 1

1.3 Objekttypen create-object-type AUTHID OR TYPE type-name REPLACE IS OBJECT CURRENT_USER AS DEFINER UNDER supertype ( attribute datatype element-spec NOT element-spec ) FINAL INSTANTIABLE NOT subprogram-clauses inheritance-clauses map-order-function-spec 2

inheritance-clauses NOT OVERRIDING NOT FINAL NOT subprogram-clauses INSTANTIABLE MEMBER procedure-spec STATIC function-spec map-order-function-spec MAP MEMBER function-spec ORDER procedure-spec PROCEDURE function-spec FUNCTION RETURN name name datatype ( parameter datatype ( parameter datatype ) ) 3

create-type-body OR TYPE BODY type-name REPLACE IS MEMBER procedure-declaration AS STATIC function-declaration MAP MEMBER function-declaration ORDER procedure-declaration PROCEDURE name IS pl/sql-block AS function-declaration FUNCTION RETURN name datatype END ( parameter datatype ( parameter datatype IS pl/sql-block AS ) ) 4

2 Objekttabellen create-object-table TABLE table OF object-type object-table-substitution ( object-properties ) table-properties object-table-substitution NOT object-properties SUBSTITUTABLE AT ALL LEVELS column attribute DEFAULT expr column-ref-constraint table-or-view-constraint table-ref-constraint table-properties column-constraint column-properties column-properties AS subquery object-type-col-properties nested-table col-properties 5

object-type-col-properties COLUMN column substitutable-column-clause substitutable-column-clause IS OF ( ONLY type ) ELEMENT TYPE SUBSTITUTABLE AT ALL LEVELS NOT nested-table col-properties NESTED TABLE nested-item substitutable-column-clause STORE table-ref-constraint AS storage-table SCOPE FOR ( ref-column ref-attribute ) IS scope-table-name CONSTRAINT FOREIGN contraint.name KEY ( ref-column ref-attribute ) references-clause column-ref-constraint SCOPE IS scope-table-name CONSTRAINT contraint.name references-clause 6

3 Objektsichten create-object-view OR VIEW view OF type-name REPLACE WITH OBJECT IDENTIFIER DEFAULT ( attribute UNDER superview ) ( table-or-view-constraint attribute column-constraint ) AS subquery subquery-restriction-clause 4 objekt-relationale Anfragen Ausdrücke etc. TABLE(collection-expression) [(+)] kann in einer FROM-Klausel verwendet werden um auf kollektionswertige Attribute zuzugreifen. Die optionale Angabe von (+) funktioniert ähnlich wie bei einem outer join. COLUMN_VALUE ist der Spaltenname der implizit für nested tables verwendet wird. DEREF(expr) liefert zu einem referenzwertigen Ausdruck das zugehörige Objekt. Meist kann auf DEREF verzichtet werden wenn man Pfadausdrücke verwendet die mittels. gebildet werden (s. [2 Object Access Expressions]). REF(correlation-variable) liefert die Referenzen auf die Objekte der Tabelle die durch den Tabellenalias (correlation-variable) bezeichnet wird. VALUE(correlation-variable) liefert die Objekte der Tabelle die durch den Tabellenalias (correlation-variable) bezeichnet wird. Mit expr IS [NOT] DANGLING kann getestet werden ob das durch den gegebenen Ausdruck 7

referenzierte Objekt existiert oder nicht. Mit expr IS [NOT] OF [TYPE] ([ONLY] type( [ONLY] type) ) kann getestet werden ob ein Ausdruck von einem der angegeben Typen ist oder nicht. Mit TREAT(expr AS [REF] type) kann der Typ eines Ausdrucks in einen Ober- oder Untertyp geändert werden. Mit CAST(expr AS type-name) und auch mit CAST((subquery) AS type-name) kann ein Ausdruck von einem vordefinierten Typ in einen anderen konvertiert werden. Mit CAST(MULTISET(subquery) AS type-name) kann ein Anfrageergebnis in einen Mengentyp umgewandelt werden. Mit type-name(expr( expr) ) wird ein Konstruktor zu einem Objekttyp (type-name) aufgerufen. Neben einem implizit definierten Konstruktor zu jedem Objekttyp kann man selbst weitere Konstruktoren definieren. Literatur [1] Oracle9i Database Concepts Kapitel 14 und 15. [2] Oracle9i SQL Reference. [3] Oracle9i Application Developer s Guide Object-Relational Features. [4] PL/SQL User s Guide and Reference. 8