## SQL-Modus ORACLE

Sie können das Datenbanksystem MaxDB im SQL-Modus ORACLE betreiben. In den folgenden Abschnitten sind die Unterschiede zwischen einem Datenbanksystem Oracle Version 7 und einem Datenbanksystem MaxDB (im SQL-Modus ORACLE) beschrieben.

### Logische Datenbankstruktur

Die logische Datenbankstruktur der Datenbanksystem Oracle Version 7 und MaxDB unterscheidet sich grundlegend.

· Eine Oracle-Datenbank besteht aus logischer Sicht aus Tablespaces, Segmenten, Extents, Blöcken, Tabellen und Datensätzen.

· MaxDB besteht aus logischer Sicht im wesentlichen aus den Tabellen im Datenbankkatalog und den Anwendungsdaten in Form von Datensätzen.

Für MaxDB haben deshalb alle Oracle-SQL-Anweisungen, die mit der Verwaltung von Tablespaces, Segmenten, Extents oder Blöcken zu tun haben, keine Bedeutung.

### Konsistentes Lesen/Sperren

Das von Oracle angebotene konsistente Lesen kann von MaxDB durch Sperren im Isolation-Level >= 2 erreicht werden.

Oracle erlaubt eine unbegrenzte Anzahl von exklusiven Zeilensperren. Bei MaxDB tritt ab einer gewissen Anzahl von Zeilensperren eine Eskalation in Kraft, d. h. die gesamte Tabelle wird gesperrt. Der Zeitpunkt der Eskalation ist abhängig von der definierten Größe der Sperrliste.

### Datenbankprozeduren/Trigger

· In Oracle werden DB-Prozeduren, DB-Funktionen und Trigger in der ADA-ähnlichen Sprache PL/SQL definiert.

· In MaxDB werden Datenbankprozeduren, Datenbankfunktionen und Trigger in einer C-ähnlichen Sprache definiert.

### DBA-Benutzer und Privilegien

Im Gegensatz zu Oracle unterliegen in MaxDB auch Datenbankadministratoren (DBA-Benutzer) dem Privilegienkonzept und können nicht beliebige DDL-Anweisungen (z. B. CREATE INDEX) oder DML-Anweisungen (z. B. DELETE) ausführen, wenn ihnen keine entsprechenden Privilegien zugeordnet sind.

### Weitere Unterschiede

· SQL-Syntaxelemente

· SQL-Anweisungen

· Systemtabellen

· Fehlermeldungen