Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

CREATE SCHEMA - Schema erzeugen

CREATE SCHEMA erzeugt ein Schema. Gleichzeitig können Tabellen, Views, Routinen, Privilegien und Indizes definiert werden. Das Schema kann zu einem späteren Zeitpunkt mit den jeweiligen CREATE-, ALTER- und DROP-Anweisungen verändert werden.

Der aktuelle Berechtigungsschlüssel muss das Sonder-Privileg CREATE SCHEMA besitzen.



CREATE SCHEMA

{ schema [AUTHORIZATION berechtigungsschlüssel ] |  AUTHORIZATION berechtigungsschlüssel }

[ create_table_anweisung |

    create_view_anweisung |

    create_function_anweisung |

    create_procedure_anweisung |

    grant_anweisung |

    create_index_anweisung ] ...



schema

Name für das Schema. Der einfache Schemaname muss innerhalb der Datenbank eindeutig sein. Der Schemaname kann durch einen Datenbanknamen qualifiziert werden.

schema nicht angegeben:
Der Name des Berechtigungsschlüssels in der AUTHORIZATION-Klausel wird als Schemaname verwendet.


AUTHORIZATION berechtigungsschlüssel

Der Berechtigungsschlüssel wird Eigentümer des Schemas.

Dieser Berechtigungsschlüssel wird auch als Name des Schemas verwendet, wenn kein Schemaname angegeben wird.

AUTHORIZATION berechtigungsschlüssel nicht angegeben:
Wurde für die Übersetzungseinheit ein Berechtigungsschlüssel definiert, wird dieser der Eigentümer des Schemas. Sonst wird der aktuelle Berechtigungsschlüssel Eigentümer des Schemas.


create / grant_anweisungen

Werden in den CREATE- und GRANT-Anweisungen einfache Namen von Tabellen, Routinen und Indizes verwendet, werden die Namen automatisch mit dem Datenbank- und Schemanamen des Schemas qualifiziert.


create_table_anweisung

CREATE TABLE-Anweisung, die eine Basistabelle für das Schema erzeugt.


create_view_anweisung

CREATE VIEW-Anweisung, die einen View für das Schema erzeugt.


create_function_anweisung

CREATE FUNCTION-Anweisung, die eine UDF für das Schema erzeugt.


create_procedure_anweisung

CREATE PROCEDURE-Anweisung, die eine Prozedur für das Schema erzeugt.


grant_anweisung

GRANT-Anweisung, die Privilegien für eine Basistabelle, einen View oder eine Routine dieses Schemas vergibt. Die GRANT-Anweisung darf keine Sonder-Privilegien vergeben..


create_index_anweisung

CREATE INDEX-Anweisung, die einen Index für eine Basistabelle erzeugt.


create / grant_anweisungen nicht angegeben:

Es wird ein leeres Schema eingerichtet.

Arbeitsweise von CREATE SCHEMA

Die Anweisungen CREATE TABLE, CREATE VIEW, CREATE FUNCTION, CREATE PROCEDURE, GRANT und CREATE INDEX, die innerhalb der CREATE SCHEMA-Anweisung angegeben werden, werden genau in der angegebenen Reihenfolge ausgeführt.
Anweisungen, die sich auf bereits existierende Tabellen, Routinen oder Views beziehen, müssen deshalb nach der Anweisung stehen, die diese Tabellen, Routinen oder Views erzeugt.


Beispiel

Das Beispiel erzeugt das Schema ZUSAETZE und legt die Tabelle BILDER an. Die Privilegien für die Tabelle BILDER werden an den Berechtigungsschlüssel utianw1 vergeben.

   CREATE SCHEMA zusaetze
   CREATE TABLE bilder OF BLOB
   (
    MIME ('image / gif'), 
    USAGE ('Abbildungen fuer teile.katart.abb'), 
    '<Fotograf>Hans Sesamer</Fotograf>'
   ) USING SPACE blobspace
   GRANT ALL PRIVILEGES ON bilder TO utianw1

Siehe auch

CREATE TABLE, CREATE VIEW, CREATE INDEX, CREATE FUNCTION, CREATE PROCEDURE, GRANT, DROP SCHEMA