REINDEX-Befehl
Erstellt offene Indexdateien neu.
REINDEX [COMPACT]
Parameter
- COMPACT
Konvertiert normale Einfachindexdateien (IDX) in komprimierte IDX-Dateien.
Hinweise
Indexdateien sind nicht mehr aktuell, wenn eine Tabelle ohne die dazugehörigen Indexdateien geöffnet wird und in den Schlüsselfeldern der Indexdateien Änderungen vorgenommen werden. Wenn Indexdateien nicht mehr aktuell sind, können diese durch Neuindizierung aktualisiert werden.
Der REINDEX-Befehl aktualisiert alle im ausgewählten Arbeitsbereich geöffneten Indexdateien. Visual FoxPro erkennt jeden Indexdateityp (Mehrfachindexdateien (CDX), strukturierte CDX-Dateien und Einfachindexdateien (IDX)) und führt die Neuindizierung entsprechend durch. Alle Indizes in CDX-Dateien werden aktualisiert, ebenso strukturierte CDX-Dateien, die automatisch mit der Tabelle geöffnet werden.
Alle Indexdateien, die mit dem UNIQUE-Schlüsselwort des INDEX-Befehls oder mit SET UNIQUE ON angelegt wurden, behalten bei der Neuindizierung den UNIQUE-Status.
Zur Neuindizierung nicht mehr aktueller Indexdateien mit REINDEX geben Sie folgende Befehle ein:
USE TableName INDEX OutdatedIndexNames
REINDEX
Beispiel
Im folgenden Beispiel stellt ISEXCLUSIVE( ) sicher, dass die Tabelle customer
zur exklusiven Verwendung geöffnet wurde. Die Tabelle wird nicht neu indiziert, da die im aktuellen Arbeitsbereich befindliche Tabelle nicht exklusiv geöffnet wurde.
cExclusive = SET('EXCLUSIVE')
SET EXCLUSIVE OFF
SET PATH TO (HOME(2) + 'Data\')
OPEN DATA testdata && Opens the test databsase
USE Customer && Not opened exclusively
USE Employee IN 0 EXCLUSIVE && Opened exclusively in another work area
IF ISEXCLUSIVE( )
REINDEX && Can only be done if table opened exclusively
ELSE
WAIT WINDOW 'The table has to be exclusively opened'
ENDIF
SET EXCLUSIVE &cExclusive
Siehe auch
INDEX | SET INDEX | SET EXCLUSIVE | SET UNIQUE | SYS( ) - Funktionen - Überblick | USE