DROP ORDERING-Anweisung

Eine mittels CREATE ORDERING erzeugte benutzerdefinierte Ordnung kann mittels des DROP ORDERING-Befehls aus dem Datenbankschema (Data Dictionary) wieder gelöscht werden.

SQL-/Oracle??????????????-Syntax der DROP ORDERING-Anweisung:

    <DROP ORDERING Anweisung> ::=
DROP ORDERING FOR Typname <Drop-Modus>
<Drop-Modus> := { RESTRICT | CASCADE }
  • RESTRICT: Existieren abhängige Schemaobjekte, so wird das zu löschende Schemaobjekt nicht aus dem Datenbankschema entfernt. Mit Abhängigkeit ist gemeint, dass ein Schemaobjekt einen Verweis auf das zu löschende Schemaobjekt besitzt, was z.B. eine Verwendung des Schemaobjektnamens in einer Fremdschlüsselbeziehung, einer SELECT-Anfrage einer Sicht, einer SQL-Routine oder im Aktionsteil eines TRIGGER ein kann. Supertypen, -tabellen, -sichten werden ebenfalls nicht gelöscht.
  • CASCADE: Existieren transitiv abhängige Schemaobjekte, wie Fremdschlüssel, so werden diese zwar auch gelöscht, die Tabellen, die sie referenzieren, bleiben aber unversehrt samt Struktur und Daten erhalten.

Beispiel:

   DROP ORDERING FOR NameTyp RESRICT;    -- Löscht die Ordnung nur, wenn es keine abhängigen Objekte gibt

   DROP ORDERING FOR NameTyp CASCADE;    -- Löscht auch Fremdschlüssel 


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, D