Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/12/2007, 16:21
albertoshu
 
Fecha de Ingreso: agosto-2007
Mensajes: 237
Antigüedad: 16 años, 8 meses
Puntos: 1
Transacciones anidades: el rollback no deshace todas las transac activas. ¿Es normal?

Hola a todos,

A ver si me podéis echar una mano.

Tengo dos transacciones anidadadas de la siguiente manera:

Código PHP:
linea1:  Begin TRANS
linea2
: ....
linea3:  ......
linea4:  Begin TRANS
linea5
:  .....
linea6:  .....if (mysql_errordeshacer();

linea7:  Commit TRANS
linea8
:  .......
linea9:  Commit TRANS


linea10
:  function deshacer(){

linea11:     Rollback

linea12
:    } 
Cuando se produce un fallo en la linea 6, llamo a la funcion deshacer() para hacer un rollback.

El problema, es que cuando miro los registros de la base de datos, veo que se deshecho la linea 5, pero no las lineas 2 y 3.

El rollback realizado en la linea 6, ¿no debería de hacer deshecho todas las trasacciones activas?

Un saludo y muchas gracias por anticipado.