Erstellen von Indizes
Indizes können aus verschiedenen Gründen erstellt werden, unter anderen, um Abfragen effizienter auszuführen, die Zeilen einer Tabelle aufsteigend oder absteigend nach den Werten einer Spalte zu sortieren oder um Integritätsbedingungen wie zum Beispiel für die Eindeutigkeit der Indexschlüssel zu erzwingen. Sie können die Anweisung CREATE INDEX, den Db2® -Designadvisor oder den db2advis -Designadvisorbefehl verwenden, um die Indizes zu erstellen.
Informationen zu dieser Task
Diese Task geht davon aus, dass Sie einen Index für eine nicht partitionierte Tabelle erstellen wollen.
Prozedur
Verwenden Sie zum Erstellen eines Index über die Befehlszeile die Anweisung CREATE INDEX.
Beispiel:
CREATE UNIQUE INDEX EMP_IX
ON EMPLOYEE(EMPNO)
INCLUDE(FIRSTNAME, JOB)Die Klausel INCLUDE, die nur für eindeutige Indizes verwendbar ist,
gibt zusätzliche Spalten an, die an die Gruppe der Indexschlüsselspalten angehängt werden. Alle Spalten, die
mit dieser Klausel in den Index eingeschlossen werden, werden nicht zur Umsetzung der Eindeutigkeit
verwendet. Solche INCLUDE-Spalten können die Leistung einiger Abfragen durch die Möglichkeit eines reinen
Indexzugriffs verbessern. Diese Option bietet folgende Vorteile:- Sie hilft bei der Vermeidung ansonsten notwendiger Zugriffe auf die Datenseiten für weitere Abfragen.
- Sie hilft bei der Vermeidung redundanter Indizes.
Nächste Schritte
Wenn eine Zeile gelöscht oder aktualisiert wird, werden die Indexschlüssel als gelöscht markiert, jedoch erst physisch von der Seite entfernt, wenn einige Zeit nach dem Festschreiben der Löschung bzw. Aktualisierung eine Bereinigung erfolgt. Solche Schlüssel werden als pseudogelöscht bezeichnet. Eine solche Bereinigung kann zum Beispiel durch eine nachfolgende Transaktion durchgeführt werden, welche die Seite ändert, auf der der Schlüssel als gelöscht markiert ist. Die Bereinigung pseudogelöschter Schlüssel kann explizit mit dem Parameter CLEANUP ONLY ALL im Befehl REORG INDEXES ausgelöst werden.