Anfang des Inhaltsbereichs

CREATE INDEX-Anweisung (create_index_statement) Dokument im Navigationsbaum lokalisieren

Die CREATE INDEX-Anweisung (create_index_statement) definiert einen Index einer Basistabelle (siehe Tabelle).

Syntax

<create_index_statement> ::=
CREATE [UNIQUE] INDEX <index_name> ON <table_name> (<column_name> [ASC|DESC],...)

table_name, column_name, index_name

Erläuterung

Indizes unterstützen den Zugriff auf die Tabellendaten über Nicht-Schlüsselspalten. Ihre Pflege bedeutet jedoch erhöhten Aufwand bei einer INSERT-, UPDATE oder DELETE-Anweisung.

Der Index wird über die angegebenen Spalten der Tabelle erzeugt. Der Sekundärschlüssel setzt sich aus den angegebenen Spalten der Tabelle zusammen, und zwar in der angegebenen Reihenfolge.

·        Die angegebene Tabelle muss eine existierende Basistabelle sein, darf jedoch keine temporäre Tabelle sein. Der Indexname darf nicht mit einem bereits existierenden Indexnamen der Tabelle übereinstimmen.

·        Die durch column_name definierte Spalte muss eine Spalte der angegebenen Tabelle sein. Diese Spalte darf keine LONG-Spalte sein. Alle Spaltennamen müssen paarweise verschieden sein.

·        Der aktuelle Benutzer muss den Privileg-Typ INDEX für die Spalten besitzen.

·        Restriktionen

UNIQUE

Durch diese Angabe wird sichergestellt, dass keine zwei Zeilen der angegebenen Tabelle in den indizierten Spalten dieselben Werte besitzen. Enthalten zwei Zeilen für alle Spalten eines Index jeweils den NULL-Wert, so gelten diese beiden Indexwerte nicht als identisch. Enthält mindestens eine Spalte nicht den NULL-Wert, so gelten zwei Zeilen, die in allen Nicht-NULL-Spalten den gleichen Wert besitzen, als identisch.

ASC | DESC

Die Indexwerte werden in aufsteigender oder absteigender Reihenfolge abgelegt. Fehlt die Angabe von ASC oder DESC, dann wird implizit ASC angenommen.

Ende des Inhaltsbereichs