CREATE INDEX-Anweisung (create_index_statement) 
Die CREATE INDEX-Anweisung (
create_index_statement) definiert einen Index einer Basistabelle (siehe Tabelle).Syntax
<create_index_statement> ::=
CREATE [UNIQUE] INDEX <table_name>.<column_name> [ASC | DESC]
| CREATE [UNIQUE] INDEX <index_name> ON <table_name> (<column_name> [ASC | DESC],...)
Erläuterung
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 muß eine existierende Basistabelle sein, darf jedoch keine temporäre Tabelle sein.
Wenn ein Index über genau eine Spalte erzeugt wurde, dann ist es nicht möglich, einen weiteren einspaltigen Index für diese Spalte zu erzeugen.
Die durch
column_name definierte Spalte muß eine Spalte der angegebenen Tabelle sein. Diese Spalte darf keine LONG-Spalte sein. Alle Spaltennamen müssen paarweise verschieden sein.Der aktuelle Benutzer muß das INDEX-Privileg für die Spalten besitzen.
Die Summe der internen Längen der identifizierten Spalten darf 1024 Zeichen nicht überschreiten.
Indizes unterstützen den Zugriff auf die Tabellendaten über Nicht-Schlüsselspalten. Ihre Pflege bedeutet jedoch erhöhten Aufwand bei der INSERT-, UPDATE oder DELETE-Anweisung.
CREATE [UNIQUE] INDEX <index_name> ON <table_name> (<column_name> [ASC | DESC],...)
Wenn Sie diese Anweisung verwenden, dürfen nicht mehr als 16 Spaltennamen verwendet werden. Der Indexname darf nicht mit einem bereits existierenden Indexnamen der Tabelle übereinstimmen. Es können höchstens 255 Indizes pro Tabelle mit dieser Anweisung erzeugt werden.
Wenn sich der definierte Index von einem auf der Tabelle bereits existierenden Index nur durch den Indexnamen unterscheidet, scheitert die CREATE INDEX-Anweisung.
UNIQUE
Durch diese Angabe wird sichergestellt, daß keine zwei Zeilen der angegebenen Tabelle in den indizierten Spalten dieselben Werte besitzen. Dabei gelten
NULL-Werte bei einspaltigen Indizes als nicht identisch.ASC | DESC
Die Indexwerte werden in aufsteigender oder absteigender Reihenfolge abgelegt. Fehlt die Angabe von ASC oder DESC, dann wird implizit ASC angenommen.