Cita:
Empezado por eduarcol
La diferencia según lo logre entender es que el commit cierra algo asi como la sesion, mientras que commit retain cierra la transacción pero deja la sesion actual activa. Igual vale para el rollback retain.
|
Sí, pero añadir que "dejar la sesión abierta", mejor dicho mantener el contexto de la transacción, consume recursos, por ello si vas a realizar una inserción masiva, o usas continuamente commitRetaining la aplicación puede volverse lenta después de trabajar con ella. Lo bueno es que los componentes de acceso (Zeos no los he mirado) normalmente realizan un commit cada cierto tiempo, por lo que puede aliviar el problema.
Creo recordar... y
sólo creo, que si haces un commitRetaining los demás usuarios de la red no verán ese registro recien añadido, porque precisamente te guarda el contexto de tu transacción.
Saludos