Database Reference
In-Depth Information
chen. Der Namen des Index darf nicht mit dem Tabellennamen
identisch sein.
Wenn nun oft Abfragen getätigt werden, welche nach dem Da-
tum in der Tabelle „Kursbesuche“ fragen, ist es angebracht, das
Attribut „Datum“ gemäss Bild 6.7 zu indizieren.
Bild 6.7:
Index für Ab-
frageattribut
erstellen
CREATE INDEX ID_Kursdatum ON
Kursbesuche ( Datum );
Es wurde nun ein Index mit Namen „ID_Kursdatum“ auf das
Attribut „Datum“ eingerichtet, welcher mehrere gleiche Da-
tumswerte akzeptiert. Dies ist deshalb so, weil das Schlüs-
selwort „UNIQUE“ nicht verwendet wurde. Die Indizierung
führt dazu, dass sich das Datenbanksystem „merkt“, an wel-
chen physikalischen Stellen auf dem Datenträger (Festplatte,
Disk) sich Datensätze mit dem Attribut „Datum“ der Tabelle
„Kursbesuche“ befinden. Dazu werden alle Datumswerte sor-
tiert und zusammen mit den Speicheradressen in einer eigenen
Datei abgelegt. Wenn nun nach einem bestimmtem Datum ge-
fragt wird, muss nur diese Datei durchsucht werden. Sobald
der Wert gefunden wird, weiß das System auch, wo sich die
entsprechenden Datensätze befinden.
Weil die Indizierung einen gewissen Verwaltungsaufwand mit
sich bringt, lohnt sie sich nur für Tabellen mit mindestens 12
Datensätzen (Richtwert).
Um einen Index wieder zu entfernen, wird ein SQL-Befehl
verwendet, wie dies Bild 6.8 zeigt.
Bild 6.8:
Index entfernen
DROP INDEX Indexname ON Tabellenname ;
6.1.4
Beziehungen verwalten
Alle wichtigen Datenbanksysteme unterstützen inzwischen Be-
ziehungen zwischen den Tabellen und sorgen automatisch da-
für, dass die referentielle Integrität gewährleistet ist. Dafür
wurde der Befehl ALTER TABLE erweitert, wie in Bild 6.9 dar-
gestellt.
Search WWH ::




Custom Search