`
winzenghua
  • 浏览: 1322271 次
  • 性别: Icon_minigender_2
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

T-sql 的Transaction模板

SQL 
阅读更多

T-sql 的Transaction模板

很简单的模板,开始一个Transaction,然后运行一些命令。最后根据情况来判断是否Commit

如果在中间出了严重故障,无法在程序中终止,可以在Management Studio中关闭当前命令窗口,Sqlserver会提示,是否终止未完成的Transaction, 选择No即可。

-- Transaction template
Begin Try
Begin Transaction updateWLReg
Begin
-- leave your code here


End

IF @@ERROR <> 0
BEGIN

print 'rollback transaction because there is a error'

ROLLBACK TRANSACTION

END

ELSE

begin

print 'commiting'

---- change this to Rollback during debuging phase
-- ROLLBACK TRANSACTION
Commit TRANSACTION

end
End Try
Begin Catch
print 'exception happens'
SELECT ERROR_NUMBER() ERNumber,
ERROR_SEVERITY() ErrorSeverity,
ERROR_STATE() ErrorState,
ERROR_PROCEDURE() ErrorProcedure,
ERROR_LINE() ErrorLine,
ERROR_MESSAGE() ErrorMessage

ROLLBACK TRANSACTION
End Catch

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics