[Lazarus-es] zeos-firebird: ejemplo transacciones

Paola Bruccoleri pbruccoleri en adinet.com.uy
Jue Mayo 6 18:51:47 CEST 2010


Hola..
alguien tiene algún ejemplo (usando zeos/firebird2) donde graba varios 
registros en varias tablas (usando o no sp) y que queden en la misma 
transacción?? quisiera ver cómo lo están resolviendo.

esto es lo que yo hago:

   DBMain.fdb.AutoCommit:= false;

   try
     DBMain.qry.Close;
     DBMain.qry.SQL.Text:= 'update numeros set boletas = 
'+IntToStr(nComprob+1);
     DBMain.qry.ExecSQL;
   except
     MessageDlg('Error', 'Hay error ', mtWarning, [mbOk], 0);
     DBMain.fdb.Rollback;
   end;

   ..... varias sentencias: inserts, updates.... todas entre try/except

   DBMain.fdb.Commit;
   DBMain.fdb.AutoCommit:= true;  


Si uso un generador para incrementar el contador de comprobantes, se 
supone que si todo el proceso de grabar está dentro de la misma 
transacción, puedo seguir consultando por el valor del generador, que no 
se me va a modificar, no?

chauuuuuuuuuu







More information about the Lazarus-es mailing list