SQL > Tabellenbearbeitung > Create Index 

Mit Indizes lassen sich Daten aus Tabellen schneller aufrufen. Nehmen wir zur Verdeutlichung ein einfaches Beispiel: Wir möchten uns in einem Buch über Gartenbau über den Anbau von Paprika informieren. Anstatt das Buch von Anfang an zu lesen, bis wir auf einen Abschnitt über Paprika stoßen, empfiehlt es sich, im Index am Ende des Buchs nachzuschauen, auf welchen Seiten Informationen über Paprika zu finden sind und dann diese Seiten aufzuschlagen. Dies spart viel Zeit und ist die bei weitem effektivste Methode zum Auffinden der benötigten Informationen.

Das gleiche Prinzip lässt sich auch auf Datenbanktabellen anwenden. Ohne Index liest das Datenbanksystem die gesamte Tabelle aus (dieser Vorgang wird als „Tabellenscan“ bezeichnet), um die gewünschten Informationen aufzufinden. Mit dem richtigen Index kann das Datenbanksystem zunächst den Index nach dem Speicherort der Daten durchsuchen und die benötigten Daten dann direkt an diesem Ort aufrufen. Dies spart viel Zeit.

Es ist daher in vielen Fällen empfehlenswert, Indizes für Tabellen anzulegen. Ein Index kann eine oder mehrere Spalten umfassen. Die allgemeine Syntax zur Erstellung eines Index sieht folgendermaßen aus:

CREATE INDEX "INDEX_NAME" ON "TABELLEN_NAME" (SPALTEN_NAME);

Gehen wir von folgender Tabelle aus:

Tabelle Customer

Spalten NameDatentyp
First_Namechar(50)
Last_Namechar(50)
Addresschar(50)
Citychar(50)
Countrychar(25)
Birth_Datedatetime

Um einen Index für die Spalte Nachname zu erzeugen, würden wir eingeben:

CREATE INDEX IDX_CUSTOMER_LAST_NAME
ON Customer (Last_Name);

Um einen Index für die beiden Spalten Wohnort und Land zu erstellen, würden wir eingeben:

CREATE INDEX IDX_CUSTOMER_LOCATION
ON Customer (City, Country);

Es gibt keine strikten Regeln für die Index-Benennung. Im Allgemeinen wird ein Präfix wie "IDX_" vor den Indexnamen gesetzt, um eine Verwechslung mit anderen Datenbankobjekten zu vermeiden. Außerdem empfiehlt es sich, anzugeben, für welche Tabelle und welche Spalte(n) der Index verwendet wird.

Beachten Sie bitte, dass sich die genaue Syntax für den Befehl CREATE INDEX je nach Datenbank unterscheiden kann. Präzise Angaben finden Sie im Referenzhandbuch Ihrer Datenbank. 

SQL ALTER TABLE >>





Copyright © 2014   1keydata.com   Alle Rechte vorbehalten.