KEY( )-Funktion
Gibt den Indexausdruck eines Indexnamens oder einer -datei zurück.
KEY([CDXFileName,] nIndexNumber [, nWorkArea | cTableAlias])
Rückgabewerte
Zeichen
Parameter
CDXFileName
Gibt den Namen einer Mehrfachindexdatei an. KEY( ) gibt die Indexausdrücke des Indexnamens der CDX-Datei zurück. Die angegebene Mehrfachindexdatei kann entweder die strukturierte Mehrfachindexdatei sein, die automatisch zusammen mit der Tabelle geöffnet wird, oder eine unabhängige Mehrfachindexdatei.nIndexNumber
Gibt an, welcher Indexausdruck zurückgegeben werden soll.USE und SET INDEX unterstützen eine Indexdateiliste, mit der Sie mehrere Indexdateien für eine Tabelle öffnen können. Beliebige Kombinationen aus IDX-Einfachindex-, strukturierten und unabhängigen Mehrfachindexdateien können in die Indexdateiliste aufgenommen werden.
Der numerische Ausdruck nIndexNumber gibt an, welcher Indexausdruck aus den offenen Indexdateien zurückgegeben werden soll. KEY( ) gibt Indexausdrücke aus offenen Indexdateien in der folgenden Reihenfolge zurück, wenn nIndexNumber von 1 bis zur Gesamtanzahl der offenen IDX-Einfachindex- und strukturierten und unabhängigen Mehrfachindexnamen erhöht wird:
- Indexausdrücke aus IDX-Einfachindexdateien (sofern solche geöffnet sind) werden als Erste zurückgegeben. Die Reihenfolge, in der die Einfachindexdateien in USE oder SET INDEX enthalten sind, legt die Reihenfolge der Rückgabe der Indexausdrücke fest.
- Indexausdrücke für jeden Namen in einem strukturierten Mehrfachindex (sofern vorhanden) werden danachNächste zurückgegeben. Die Indexausdrücke der Namen werden in der Reihenfolge zurückgegeben, in der die Namen im strukturierten Index erstellt wurden.
- Indexausdrücke für jeden Namen in allen offenen unabhängigen Mehrfachindizes werden zuletzt zurückgegeben. Die Indexausdrücke der Namen werden in der Reihenfolge zurückgegeben, in der die Namen in den unabhängigen Mehrfachindizes erstellt wurden.
Die Rückgabe einer leeren Zeichenfolge erfolgt, wenn nIndexNumber größer als die Gesamtanzahl der geöffneten IDX-Einfachindexdateien sowie der strukturierten und unabhängigen Mehrfachindexnamen ist.
nWorkArea
Gibt die Arbeitsbereichsnummer der Tabelle an, deren Indexausdrücke von KEY(°) zurückgegeben werden sollen.Ist im angegebenen Arbeitsbereich keine Tabelle geöffnet, gibt KEY(°) eine leere Zeichenfolge zurück.
cTableAlias
Gibt den Alias der Tabelle an, deren Indexausdrücke von KEY(°) zurückgegeben werden sollen.Besitzt keine Tabelle den angegebenen Alias, generiert Microsoft Visual FoxPro eine Fehlermeldung.
Wird nWorkArea und cTableAlias ausgelassen, werden die Indexausdrücke der im aktuellen Arbeitsbereich geöffneten Tabelle zurückgegeben.
Hinweise
Ein Indexausdruck ist angegeben, wenn ein Indexname oder eine Indexdatei mit INDEX erzeugt wird. Der Indexausdruck bestimmt, wie Sie eine Tabelle anzeigen oder darauf zugreifen, wenn der Indexname oder die -datei als steuernder Hauptindexname oder als steuernde Hauptindexdatei geöffnet ist.
Weitere Informationen zum Erstellen von Indexnamen, Indexdateien und Indexausdrücken finden Sie unter INDEX.
Beispiel
Im folgenden Beispiel wird die Tabelle customer
in der Datenbank testdata
geöffnet. Mit FOR ... ENDFOR wird eine Schleife erstellt, in der mit Hilfe von KEY( ) der Indexausdruck der einzelnen Indexnamen im strukturierten Index von customer
angezeigt wird. Der Name jedes strukturierten Indexnamens wird mit seinem Indexausdruck angezeigt.
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
? TAG(nCount) + ' ' && Display tag name
?? KEY(nCount) && Display index expression
ELSE
EXIT && Exit the loop when no more tags are found
ENDIF
ENDFOR
Siehe auch
INDEX | REINDEX | SET INDEX | SYS(14) - Indexausdruck | USE