SQL事務處理語句


存储过程中常用到的SQL事务处理语句格式可能会有如下几种:

第一种:

set xact_abort on

begin tran

insert ...

update ...

delete ...

commit tran

第二种:

set xact_abort on

begin tran

insert ...

if @@error<>0 rollback tran

update ...

if @@error<>0 rollback tran

delete ...

if @@error<>0 rollback tran

commit tran

第三种:

set xact_abort on

begin tran

insert ...

update ...

delete ...

if @@error<>0

rollback tran

else

commit tran


第四种:

set xact_abort on

begin tran

declare @ErrorSave int

insert ...

if @@error<>0 set @ErrorSave=1

update ...

if @@error<>0 set @ErrorSave=1

delete ...

if @@error<>0 set @ErrorSave=1

if @ErrorSave>0

rollback tran

else

commit tran

使用事务的缺陷:使用多了事务处理,经常会产生死锁现象,特别是多用户并发插入修改删除数据的时候,会造成服务器运行缓慢.所以有时候只好采取删除掉事务的代码,而是提前在程序中检测输入的存储过程参数是否合法数据.

posted on 2009-02-27 21:17  wanghuaide  阅读(247)  评论(0编辑  收藏  举报

导航