Ich würde es an deiner Stelle so lassen. Alles andere wäre herumgetrickse und kein valides
SQL.
Bei Firebird kann kannst Du die 10 Anweisungen in einem Rutsch an den Server senden, indem Du sie in einen Block einschließt:
Code:
SET TERM ^;
EXECUTE BLOCK AS
BEGIN
Update MyTable set Feld1 = Feld1NEU where Feld1NEU <> 0;
Update MyTable set Feld2 = Feld2NEU where Feld2NEU <> 0;
Update MyTable set Feldn = FeldnNEU where FeldnNEU <> 0;
END^
SET TERM ;^
Damit wird das dann auch mit eingeschaltetem AutoCommit nur eine Transaktion.