Freigeben über


REPLACE FROM ARRAY-Befehl

Aktualisiert Daten in Feldern anhand von Werten aus einem Variablenarray.

REPLACE FROM ARRAY ArrayName [FIELDS FieldList] [Scope]
   [FOR lExpression1] [WHILE lExpression2] [NOOPTIMIZE]

Parameter

  • ArrayName
    Gibt den Namen des Arrays an, dessen Werte die Felddaten ersetzen.

  • FIELDS FieldList
    Gibt an, dass nur die Felder in FieldList durch den Arrayinhalt ersetzt werden. Bei Feldern in nicht ausgewählten Arbeitsbereichen muss der Alias der Tabelle vorangestellt werden.

  • Scope
    Gibt einen Bereich von Datensätzen an, die durch den Arrayinhalt ersetzt werden sollen. Nur die Datensätze des Bereichs werden ersetzt. Es wird so lange ersetzt, bis das Ende des Bereichs oder des Arrays erreicht ist.

    Die Bereichsklauseln sind: ALL, NEXT nRecords, RECORD nRecordNumber und REST. Weitere Informationen zu Bereichsklauseln finden Sie in der Hilfe unter Bereichsklauseln und Überblick über die Sprache.

    Der Standardbereich für REPLACE FROM ARRAY ist der aktuelle Datensatz (NEXT 1).

  • FOR lExpression1
    Gibt an, dass die genannten Felder nur in Datensätzen ersetzt werden, für die lExpression1 gleich Wahr (.T.) ist. Mit FOR können gezielt bestimmte Datensätze ersetzt und unerwünschte Datensätze herausgefiltert werden. Es werden Felder in allen Datensätzen ersetzt, für die lExpression1 gleich Wahr (.T.) ist, oder bis das Ende des Arrays erreicht ist.

    Rushmore optimiert REPLACE FROM ARRAY FOR, wenn lExpression1 ein optimierbarer Ausdruck ist. Die beste Leistung erreichen Sie, indem Sie in der FOR-Klausel einen optimierbaren Ausdruck verwenden.

    Weitere Informationen finden Sie unter SET OPTIMIZE und Verwenden von Rushmore zum Beschleunigen des Datenzugriffs.

  • WHILE lExpression2
    Gibt eine Bedingung an, die bewirkt, dass Felder in Datensätzen durch den Arrayinhalt ersetzt werden, solange der logische Ausdruck lExpression2 gleich Wahr (.T.) ist.

  • NOOPTIMIZE
    Deaktiviert die Rushmore-Optimierung.

    Weitere Informationen finden Sie unter SET OPTIMIZE und Verwenden von Rushmore zum Beschleunigen des Datenzugriffs.

Hinweise

Memo- und Objektfelder werden in REPLACE FROM ARRAY ignoriert. Verwenden Sie zum Importieren von Daten in diese Felder GATHER und APPEND GENERAL.

Die Elemente des Arrays ersetzen ab dem ersten Feld die entsprechenden Felder des Datensatzes. Das erste Arrayelement ersetzt das erste Feld eines Datensatzes, das zweite Arrayelement ersetzt das zweite Feld usw.

Wenn das Array weniger Elemente hat, als die Tabelle Felder enthält, werden die überzähligen Felder ignoriert. Wenn das Array mehr Elemente hat, als die Tabelle Felder enthält, werden die überzähligen Arrayelemente ignoriert.

Anmerkung   Es wird nichts ersetzt, wenn der Datensatzzeiger sich am Ende der Datei im aktuellen Arbeitsbereich befindet und Sie ein Feld in einem anderen Arbeitsbereich angeben.

Siehe auch

APPEND FROM ARRAY | APPEND GENERAL | COPY TO ARRAY | GATHER | REPLACE | SCATTER | SET OPTIMIZE