CDX( )-Funktion
Gibt den Namen der geöffneten Mehrfachindexdatei (CDX) mit der angegebenen Indexpositionsnummer zurück.
CDX(nIndexNumber [, nWorkArea | cTableAlias])
Rückgabewerte
Zeichen
Parameter
nIndexNumber
Die folgenden Ausführungen gelten für eine Tabelle mit einem strukturierten Mehrfachindex sowie mindestens einem weiteren Mehrfachindex:nIndexNumber Beschreibung 1 Gibt den Namen der strukturierten Indexdatei zurück. (Dieser ist immer mit dem Namen der Tabelle identisch.) 2 Gibt den Namen der ersten Mehrfachindexdatei zurück, die in der INDEX-Klausel von USE oder mit dem SET INDEX-Befehl angegeben ist. 3 Gibt gegebenenfalls den Namen der zweiten Mehrfachindexdatei zurück usw. Größer als die Anzahl geöffneter CDX-Dateien Gibt die leere Zeichenfolge zurück. Die folgenden Ausführungen gelten für eine Tabelle ohne strukturierten Mehrfachindex, aber mit mindestens einem Mehrfachindex:
nIndexNumber Beschreibung 1 Gibt den Namen der ersten Mehrfachindexdatei zurück, die in der INDEX-Klausel von USE oder mit dem SET INDEX-Befehl angegeben ist. 2 Gibt gegebenenfalls den Namen der zweiten Mehrfachindexdatei zurück usw. Größer als die Anzahl geöffneter CDX-Dateien Gibt die leere Zeichenfolge zurück. nWorkArea
Gibt die Nummer des Arbeitsbereichs der Tabelle an, für welche CDX( ) die Namen der geöffneten Mehrfachindexdateien zurückgeben soll.cTableAlias
Gibt den Alias der Tabelle an, für welche CDX( ) die Namen der geöffneten Mehrfachindexdateien zurückgeben soll.Werden die Argumente nWorkArea und cTableAlias nicht angegeben, erfolgt die Rückgabe der Namen der Mehrfachindexdateien für die Tabelle im aktuellen Arbeitsbereich.
Hinweise
Die CDX( )- und MDX( )-Funktion sind identisch.
Ein CDX-Mehrfachindex besteht aus einer physikalischen Datei, die viele Indexnamen enthält. Jeder Indexname ist ein Indexreihenfolgenverweis für die dazugehörige Tabelle.
Man unterscheidet zwei Typen von CDX-Dateien: den Standardmehrfachindex (CDX) und den strukturierten CDX-Index. Ein Standardmehrfachindex (CDX) kann einen anderen Namen als die dazugehörige Tabelle tragen und sich in einem anderen Verzeichnis als diese befinden. Eine Tabelle kann mehrere Mehrfachindexdateien haben. Einen Mehrfachindex können Sie mit der INDEX-Klausel von USE oder mit dem SET INDEX-Befehl öffnen.
Ein strukturierter CDX-Index muss denselben Namen wie die dazugehörige Tabelle tragen und im selben Verzeichnis abgelegt sein. Eine Tabelle kann nur eine strukturierte Indexdatei haben. Strukturierte CDX-Indexdateien werden automatisch geöffnet und aktualisiert, wenn die dazugehörige Tabelle mit USE geöffnet wird.
Alle IDX-Dateien (mit Microsoft FoxBASE+ und FoxPro 1.0 kompatible Indexdateien), die mit USE oder SET INDEX angegeben werden, werden von CDX( ) ignoriert.
Die Namen der einzelnen Indizes in einer CDX-Datei können Sie mittels TAG( ) ermitteln, die Namen der geöffneten IDX-Indexdateien mittels NDX( ).
Ist SET FULLPATH auf ON gesetzt, gibt CDX( ) den Pfad und den Namen der CDX-Indexdatei zurück. Ist SET FULLPATH auf OFF gesetzt, werden das Laufwerk und der Name der CDX-Indexdatei zurückgegeben.
Beispiel
Im folgenden Beispiel wird die Tabelle customer
in der Datenbank testdata
geöffnet. Mittels FOR ... ENDFOR wird eine Schleife erstellt, in welcher der Name jedes Strukturindexes angezeigt wird.
CLOSE DATABASES
OPEN DATABASE (HOME(2) + 'data\testdata')
USE customer && Open customer table
CLEAR
FOR nCount = 1 TO 254
IF !EMPTY(TAG(nCount)) && Checks for tags in the index
? CDX(nCount) && Display structural index names
ELSE
EXIT && Exit the loop when no more tags are found
ENDIF
ENDFOR
Siehe auch
INDEX | MDX( ) | NDX( ) | SET FULLPATH | SET INDEX | SYS(14) - Indexausdruck | SYS(21) - Nummer des Hauptindexes | SYS(22) - Name des Hauptindexes oder -schlüssels | SYS(2021) - Gefilterter Indexausdruck | TAG( ) | USE