Nun, mir ist sowieso schleierhaft, warum das Feld, nach dem du gesucht hast, mit dem Wert, mit dem du danach gesucht hast überschreiben willst...
Locate setzt lediglich den Datenbank-Cursor auf den Datensatz, wenn eine Suche erfolgreich war. Oben in deinem Beispiel suchst du erst in ZQuery im Feld 'No' nach 'Id'. Hast du den passenden Datensatz gefunden, willst du mit deiner Update-Anweisung den Wert von 'No' mit dem Wert von 'Id' überschreiben.
Entweder hast du nicht verstanden, daß die Update-Anweisung in
SQL zum Ändern von Datensätzen verwendet wird, oder...
Grüße
Mikhal