Tengo un serio inconveniente, estoy trabajando con los componentes Zeos, siempre he manejado las transacciones con Cacheupdate, ahora he tratado de agregar en un script o ZSqlProcessor una serie de instrucciones para que se ejecuten he trabajado con commit y rollback, en resumen esto es lo que tengo:
sqScript = TZSQlProcessor;
Código Delphi
[-]sqScript.Script.Clear;
sqScript.Script.Add('Insert into Pagos (Numero, cliente, monto) values (1, 'Eduardo', 1000);');
sqScript.Script.Add('update Saldos set MontoCancelado = MontoCancelado + 1000 where cliente = ''Eduardo'';');
sqScript.Script.Add('Commit;');
try
sqScript.Execute;
except
sqScript.Script.Clear;
sqScript.Script.Add('Rollback;');
sqScript.Execute;
end;
el codigo funciona muy bien, el registro se graba o se devuelve la transaccion, pero cuando voy a abrir otro query me sale un error:
Cita:
Invalid Transaction handle(Start Transacion implicit)
|
tengo que cerrar el sistema y volverlo a abrir para que funcione.
Que desventajas o ventajas puede tener el metodo de cacheupdate??, funcionaria igual que Commit y Rollback??