WHILE-Klauseln
Durch Angabe einer WHILE-Klausel wird ein Befehl solange für jeden Datensatz ausgeführt, wie die logische Bedingung den Wert Wahr (.T.) ergibt. Wenn die Auswertung des Ausdrucks zum ersten Mal Falsch (.F.) ergibt, wird die Ausführung des Befehls beendet. Verbleibende Datensätze werden ignoriert. Dieser Ausdruck wird normalerweise in einer Tabelle verwendet, die nach dem(n) Feld(ern) sortiert oder indiziert ist, die im WHILE-Ausdruck enthalten sind. Im folgenden Beispiel sucht eine indizierte Tabelle nach dem ersten Datensatz, der die Bedingung erfüllt. Anschließend wird der REPLACE-Befehl für die Datensätze ausgeführt, die die WHILE-Bedingung erfüllen.
USE Mytable INDEX street
LOCATE FOR UPPER(street) = "MAIN"
REPLACE street WITH "Maine" WHILE UPPER(street) = "MAIN"
Sie können Geltungsbereich-, FOR- und WHILE-Ausdrücke in einem einzigen Visual FoxPro-Befehl verwenden. Im folgenden Beispiel wird ein neuer Wert in das Feld status
verschiedener Datensätze gespeichert.
REPLACE ALL status WITH "Active" FOR total > 30 ;
WHILE expd > {^1998/02/16}
Wenn Sie FOR und WHILE zusammen angeben, hat der WHILE-Ausdruck Vorrang. Die FOR-Klausel wird zum Filtern der mit WHILE ausgewählten Datensätze verwendet.
In der folgenden Tabelle sind Befehle aufgeführt, in denen Sie eine WHILE-Klausel verwenden können.
Befehle, die WHILE-Klauseln verwenden
Siehe auch
LOCATE-Befehl | REPLACE-Befehl | Bearbeitung von Feldern und Datensätzen | Datenbearbeitung