写了几年的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