您的位置:首页 > 数据库

SQL事务处理语句总结

2008-04-15 11:32 162 查看
存储过程中常用到的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

使用事务的缺陷:使用多了事务处理,经常会产生死锁现象,特别是多用户并发插入修改删除数据的时候,会造成服务器运行缓慢.所以有时候只好采取删除掉事务的代码,而是提前在程序中检测输入的存储过程参数是否合法数据.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: