![]() |
usando transacciones firebird + firedac no visibles en otra session
Hola a Todos, mi problema es que los cambios ejecutados en la base de datos mediante transacciones no era visible a otros usuarios. Usando firebird 2.5 y firedac con delphi xe10 berlin
Enncontre una posible causa problema y solucion: Firebird puede manejar transacciones anidadas. cuando se inicia el programa usando coneccion con firedac por omision es autocommit. Normalmente colocamos : transaccion.StartTransaction; try execute procedurex commit except rollback end para evitar anidar la transaccion preguntemos if DB_Firedac.InTransaction = false then DB_Firedac.StartTransaction; con esa intruccion evitamos anidar las transacciones pero de otro forma nos tocaria dar 2 veces commit para que los cambios sean visibles a otros usuarios una forma de evitar que sucedandos transacciones anidadas seria: DB_Firedac.TxOptions.EnableNested := False ; esto nos generaria un error en ejecucion si tratamos de iniciar una transaccion anidada |
Has planteado el problema, y algunas alternativas.
La duda es que personalmente a mi no me queda claro cual es la pregunta. |
Manejo De Transacciones
Cita:
|
Cita:
^\||/^\||/^\||/^\||/ |
La franja horaria es GMT +2. Ahora son las 23:48:30. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi