Das war es noch nicht. Jetzt kommt die Meldung

Ergebnis der Anweisung enthält mehr als eine Zeile.

Syntax:
update mdv/fzs set (fzsleasvar, fzsleasvnr, fzsleasend) = (select
fzsleasvar, fzsleasvnr, fzsleasend
from mdv/lea where fzskeyknd=lea.fzskeyknd)

Irgendwas ist noch falsch. Übrigens Datei 1 ist natürlich viel größer als Datei 2 und in Datei 2 sind demzufolge auch nicht alle Sätze zu finden. Es sollen die Felder der gefundenen Sätze in Datei 1 upgedated werden (scheußliches Wort).