tengo un procedimiento que en todo momento se controla si ocurre un error
para hacer un rollback
¿puede ocurrir que por alguna causa se produzca un error y el @@error no lo
coja o bien el rollback
no desaga todo lo ocurrido dentro del begin tran?
y si es asi , ¿como puedo hacer para detectar dicho error?
mi procedimiento es de este estilo
create procedure Volcar()
as
set nocount on
begin transaction
insert into tabla1(ncampo)
select ncampo from tabla2
set @p_error=@@error
if @p_error<>0 then goto TRATAMIENTOERRORES
commit tran
goto FIN
TRATAMIENTOERRORES:
rollback tran
FIN:
set nocount off
muchas gracias
Leer las respuestas