TurboDB Engine Dokumentation

Indexe

Previous  Top  Next

Indexe werden zusätzlich zu den eigentlichen Tabellen verwaltet, um schnelles Suchen und Sotieren zu ermöglichen. TurboDB Indexdefinitionen bestehen entweder aus einer Liste von Feldnamen oder einem Ausdruck. Falls ein Index als eindeutig definiert ist, werden Datensätze die diese Eindeutigkeit verletzen nicht akzeptiert. Eine weitere Form eines Index ist der Volltextindex.

Indexe basierend auf einer Liste von Feldern

Diese Indexe werden in der Reihenfolge des ersten Feldes in der Feldliste sortiert. Wenn zwei Datensätze den gleichen Wert für das erste Feld haben, werden sie nach dem zweiten Feld der Feldliste sortiert und so weiter. Es kann bis 10 Felder in der Indexfeldliste geben. Jedes Feld kann in auf- oder absteigender Reihenfolge in die Indexbeschreibung eingehen.

Indexe basierend auf einem Ausdruck

Diese Indexe werden nach dem Wert eines beliebigen Ausdrucks sortiert, der bis 40 Zeichen lang sein kann. Ist der Ausdruck vom Type String, wird der Index wie die Werte einer alphanummerischen Spalte sortiert. Wenn der Ausdruck nummerischer Art ist, wird der Index entsprechend der normalem nummerischen Reihenfolge sortiert.

Volltext-Indexe

Ein Volltext-Index erlaubt es einem Anwender in jedem Feld der Tabelle nach einem Schlüsselwort oder einer Reihe von Schlüsselwörtern zu suchen. Volltext-Index benötigen eine separate Tabelle, die Wörterbuch-Tabelle, welche die indizierten Wörter enthält. Volltext-Indexe sind für Tabellen ab Level 4 anders implementiert als für die niedrigeren Level. Ab Level 4 gibt es nur ein Speicherobjekt, das die Verbindung zwischen  Wörterbuch-Tabelle und indizierter Tabelle herstellt. Die Dateierweiterung dieses Objekt ist fti oder tdbf. In den älteren Tabellen-Formaten wird Verbindung über Relations-Felder hergestellt, was eine zusätzliche Datenbank-Tabelle (Extension rel) und zwei weitere Indexe (in1 und in2) nötig macht.

Indexe können mit verschiedenen TurboDB Tools zur Entwurfszeit erzeugt, geändert und gelöscht werden. Zur Laufzeit kann TurboSQL oder Methoden der VCL Komponenten Bibliothek verwendet werden um Volltext-Index zu erstellen, zu erneuern oder zu löschen.

System-Indexe

Bei den Datentypen AutoInc, Link und Relation werden automatisch ein oder mehrere Indexe erstellt. Diese (System)-Indexe tragen je nach Tabellenlevel den Namen der Tabelle oder beginnen mit dem Prefix 'sys_'. Ein Ändern oder Löschen dieser Indexe ist nicht möglich.