2019-04-16 sql tran and try catch :

时间:2021-07-22 05:08:48
begin try
  begin tran tran_addresource -- 标记事务的开始 delete rp
insert into Cube.ResourcePool(ResourceType, ResourceID, Created)
if begin
  exec
  end
  commit tran tran_addresource
end try
begin catch
  rollback tran tran_addresource;
throw
end
catch
select 1 as Result

  当进行 插入 删除 执行存储过程等操作时,使用事务,这样做的好处是当你误操作后,可以回滚到原来的状态

  begin tran 标志事务的开始

  commit tran 提交事务

  rollback tran 回滚事务

  这里用了一个try catch 里面又包含了一个try catch throw

  也就是try try catch

  在catch里面有个 rollback tran 回滚事务

  即有异常发生时,回滚到原来的状态