[Lazarus-es] zeos-firebird: ejemplo transacciones
Maxi
maximiliano.duarte en gmail.com
Jue Mayo 6 19:03:24 CEST 2010
El 6 de mayo de 2010 13:51, Paola Bruccoleri
<pbruccoleri en adinet.com.uy>escribió:
> 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
>
>
>
>
> _______________________________________________
> Lazarus-es mailing list
> Lazarus-es en lists.lazarus.freepascal.org
> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>
sino me equivoco los generadores estan fuera de las transacciones.
usa un contador en tabla para los comprobantes, no te guies de un generador
x que este cambia al momento de la consulta.
--
Twitter: @nenunocomar
Maximiliano Duarte
Linux User #495070
Ubuntu User #28504
Tolerancia significa disculpar los defectos de los demás; tacto, no reparar
en ellos.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus-es/attachments/20100506/3c8db064/attachment-0002.html>
More information about the Lazarus-es
mailing list