写了几年的sql了,发现竟然没有在存储过程里面使用过事务,真是大大的失误啊,下面弄一个例子出来
ALTER PROC MCS_CRUNCH_GENRAL
as
begin
declare
@SPName varchar(50),
@Result int
set @SPName = 'MCS_CRUNCH_GENRAL'
Begin Transaction @SPName
Begin Try
insert into MCS_FISCAL_YEAR
(......)
select ...... from .....,
commit transaction @SPName;
select @result = 1;
end try
begin catch
Rollback
set @Result = -1
end catch
end