Problema con rollback

02/03/2005 - 19:05 por Axel | Informe spam
Quisiera hacer un rollback en un trigger.

Tengo una tabla T1 con un trigger tr1 de insert, al insertar en esta tabla
dicho trigger tr1 manda insertar en otra tabla T2 esta segunda tabla tiene
otro trigger tr2 que manda ejecutar un SP para hacer unas validaciones, si
estas validaciones no resultan exitosas no debo insertar en la segunda tabla
T2, pero en la primea T1 si, pero al hacer el rollback en el SP de las
validaciones no me inserta ni en la primera tabla T1.

Trato de usar "Begin Tran (nombre de transaccion)" , "Rollback (nombre de
transaccion)" , y "Commit (nombre de transaccion) "
Pero en el trigger me manda un error al usar "(nombre de transaccion)"

Alguien sabe como puedo hacer esto ?

De antemando Gracias mil
 

Leer las respuestas

#1 Alejandro Mesa
02/03/2005 - 19:31 | Informe spam
Axel,

Esa es la forma en la que trabaja ROLLBACK TRANSACTION, al menos que tengas
un savepoint definido mediante SAVE TRANSACTION. En el caso de los triggers
es mas complicado. Trata de ejecutar el sp de validaciones antes de insertar
en la tabla t2, y si algo esta mal pues no insertar para que no tengas que
hacer un rollback.


AMB




"Axel" wrote:

Quisiera hacer un rollback en un trigger.

Tengo una tabla T1 con un trigger tr1 de insert, al insertar en esta tabla
dicho trigger tr1 manda insertar en otra tabla T2 esta segunda tabla tiene
otro trigger tr2 que manda ejecutar un SP para hacer unas validaciones, si
estas validaciones no resultan exitosas no debo insertar en la segunda tabla
T2, pero en la primea T1 si, pero al hacer el rollback en el SP de las
validaciones no me inserta ni en la primera tabla T1.

Trato de usar "Begin Tran (nombre de transaccion)" , "Rollback (nombre de
transaccion)" , y "Commit (nombre de transaccion) "
Pero en el trigger me manda un error al usar "(nombre de transaccion)"

Alguien sabe como puedo hacer esto ?

De antemando Gracias mil

Preguntas similares