当前位置: 代码迷 >> Sql Server >> 有关存储过程的有关问题
  详细解决方案

有关存储过程的有关问题

热度:52   发布时间:2016-04-27 20:56:45.0
有关存储过程的问题
什么时候用rollback,什么时候用commit?是要先判断是否成功才用commit吗?

------解决方案--------------------
begin transaction


if @@error <> 0
commit transaction
else
rollback transaction
------解决方案--------------------
lianqizhi(油条豆腐脑) ( ) 信誉:100 Blog 加为好友 2007-04-23 17:32:06 得分: 0


begin transaction


if @@error <> 0
commit transaction
else
rollback transaction



------解决方案--------------------
用户数据逻辑的可以用exists先检测,比如:
if exists(select 1 from 表 where 条件)
begin
操作
commit
end
else
begin
raiserror( '错误提示 ',16,1)
rollback tran
return
end

其它错误,比如字段类型不匹配,长度不一致等SQL自动回滚
  相关解决方案