Hola.
A primera vista no parece lógico, pero en mis pruebas funciona correctamente de este modo:
Código Delphi
[-]
procedure TForm1.FormCreate(Sender: TObject);
begin
IBQuery1.SQL.Text := 'SELECT * FROM TEST';
IBQuery1.Open;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
qyTmp.SQL.Text := 'UPDATE TEST SET VALOR0 = VALOR1, VALOR1 = VALOR0';
qyTmp.ExecSQL;
IBQuery1.Close;
IBQuery1.Open;
end;
Saludos