Ver Mensaje Individual
  #4 (permalink)  
Antiguo 02/02/2012, 10:39
Avatar de Ribon
Ribon
 
Fecha de Ingreso: septiembre-2010
Ubicación: El firmamento
Mensajes: 487
Antigüedad: 14 años, 2 meses
Puntos: 91
Respuesta: Rollback de transacción iniciada en otro script

Lo que se me ocurre es no depender de la transacción si no hacer el insert físico inmediatamente. y devolver o capturar el id que se ingreso usando por ejemplo PDO::lastInsertId() y luego si quieres deshacerlo usar un llamar un DELETE sobre ese id.

bueno este caso solo funcionaría si usas secuencias o auto_increments pero la condición de delete deberías tenerlo.

y ten cuidado porque ese dato al ser insertado podría ser utilizado en otra parte y bueno ya te armas un lio si lo eliminas por ejemplo por problemas de integridad referencial etc.

bueno y como ya me corrí para la parte de base de datos me gustaría presentarte a un amigo.
se llama ACID

y su letra C significa Consistencia, no inicies algo si sabes que puede no terminar, los rollback no se usa como herramientas de validación, eso se hace antes de iniciar cualquier transacción. rollback debes usarlo solo en caso de error fatal!!!! (exageración xD). =)

Espero te haya servido esta información =)

Saludos.
__________________
Utilice el Highlight para mostrar código, mis ojos se lo agradecerán :)
qué es esto? :O -> http://i48.tinypic.com/5x3kzs.png
Ya sabes :)

Última edición por Ribon; 02/02/2012 a las 10:46