您的位置:首页 > 数据库

(转)sql server 事务与try catch

2016-01-06 17:09 453 查看
本文转载自:/article/5273919.html

sql普通事务

begin transaction tr
declare @error int;
set @error=0;
select * from Car_Brand
set @error=@error+@@ERROR
select 1/0
set @error=@error+@@ERROR
select * from AREA
set @error=@error+@@ERROR
print 'i have executed!'
set @error=@error+@@ERROR

print '@@error:'+cast(@error as varchar(50))
if(@error<>0)
begin
print 'executed failed';
rollback transaction tr
end
else
begin
print 'executed success';
commit transaction tr
end


结合try catch 的事务

begin  try
begin transaction tr

select * from Car_Brand
update car_log set [reason]='ceshiceshiceshi' where [modelid]=557;
select 1/0
print 'i have executed!'
select * from AREA

print 'executed success';
commit transaction tr

end try
begin catch
print 'executed failed';
rollback transaction tr
end catch
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: