Freigeben über


INDEXSEEK( )-Funktion

Sucht in einer indizierten Tabelle, ohne den Datensatzzeiger zu bewegen, nach dem ersten Datensatz, dessen Indexschlüsselwert mit einem bestimmten Ausdruck übereinstimmt.

INDEXSEEK(eExpression [, lMovePointer [, nWorkArea | cTableAlias
   [, nIndexNumber | cIDXIndexFileName | cTagName]]])

Rückgabewerte

Logisch

Parameter

  • eExpression
    Gibt den Ausdruck für den Indexschlüsselwert an, der mit der Funktion INDEXSEEK( ) gesucht werden soll.

  • lMovePointer
    Gibt an, ob der Datensatzzeiger zum gefundenen Datensatz bewegt werden soll. Ist lMovePointer auf Wahr (.T.) eingestellt und ein übereinstimmender Datensatz vorhanden, wird der Datensatzzeiger zu diesem Datensatz bewegt. Ist lMovePointer auf Wahr (.T.) eingestellt aber kein übereinstimmender Datensatz vorhanden, wird der Datensatzzeiger nicht bewegt. Ist lMovePointer auf Falsch (.F.) gesetzt oder das Argument wird weggelassen, wird der Datensatzzeiger auch dann nicht bewegt, wenn ein übereinstimmender Datensatz vorhanden ist.

  • nWorkArea
    Gibt die Nummer des Arbeitsbereichs der Tabelle an, die nach dem Indexschlüsselwert durchsucht wird.

  • cTableAlias
    Gibt den Alias der durchsuchten Tabelle an. Wird nWorkArea und cTableAlias weggelassen, wird die Tabelle im aktuell ausgewählten Arbeitsbereich durchsucht.

  • nIndexNumber
    Gibt die Nummer der Indexdatei oder den Indexnamen an, der für die Suche nach dem Indexschlüsselwert benutzt werden soll. nIndexNumber bezieht sich auf die Indexdateien entsprechend der Reihenfolge in USE oder SET INDEX. Offene IDX-Dateien werden zunächst in der Reihenfolge nummeriert, wie sie in USE oder SET INDEX angezeigt werden. Danach werden Indexnamen in der strukturellen CDX-Datei (falls vorhanden) in der Reihenfolge nummeriert, in der sie erstellt werden. Abschließend werden die Indexnamen in allen offenen unabhängigen CDX-Dateien in der Reihenfolge ihrer Erstellung nummeriert. Weitere Information über die Nummerierung von Indizes finden Sie unter SET ORDER.

  • cIDXIndexFileName
    Gibt die IDX-Datei an, die für die Suche nach dem Indexschlüssel benutzt werden soll.

  • cTagName
    Gibt den Indexnamen einer CDX-Datei an, die für die Suche nach dem Indexschlüssel benutzt wird. Dieser kann aus einer strukturellen CDX- oder aus einer offenen unabhängigen CDX-Datei stammen.

    Anmerkung   Bei Namensübereinstimmungen zwischen IDX-Dateien und Indexnamen hat die IDX-Datei Vorrang.

Hinweise

INDEXSEEK( ) gibt Wahr (.T.) zurück, wenn eine Übereinstimmung gefunden wurde; andernfalls wird Falsch (.F.) zurückgegeben. INDEXSEEK( ) kann nur mit einer indizierten Tabelle benutzt werden und es kann nur nach einem Indexschlüsselwert gesucht werden. Es muss eine genaue Übereinstimmung vorliegen, es sei denn, dass SET EXACT auf OFF festgelegt wurde.

INDEXSEEK( ) ermöglicht eine schnelle Suche nach Datensätzen, ohne dass hierbei der Datensatzzeiger bewegt werden muss. Da der Datensatzzeiger nicht bewegt wird, werden auch keine Regeln und Trigger ausgeführt. Gibt INDEXSEEK( ) Wahr (.T.) zurück und zeigt damit an, dass ein übereinstimmender Datensatz gefunden wurde, können Sie INDEXSEEK( ) mit dem Argumentwert lMovePointer Wahr (.T.) ein zweites Mal ausführen, um den Datensatzzeiger zum gefundenen Datensatz zu bewegen.

Siehe auch

INDEX | KEYMATCH( ) | LOCATE | SEEK | SEEK( )