技术成就梦想

知道用户需求,做到专注!c#,donet,Frameworks,UML,面向对象,设计模式!
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

存储过程事务_SQL技巧

Posted on 2009-08-14 12:11  我不是高手  阅读(251)  评论(0编辑  收藏  举报

简单的小例子:
CREATE PROCEDURE testPro
AS
/**//* ------- 事务开始 ---------- */
BEGIN TRANSACTION tran_test

/**//* -------- 保存事务 ----------*/
SAVE TRANSACTION tran_test

/**//* -------- 数据操作 ---------*/
INSERT [table1] ( [content] ) VALUES ( '43332' )

 

/**//*---------- 提交事务 ------------*/
COMMIT TRANSACTION tran_test

/**//*--------- 判断是否有错误 ----------*/
IF ( @@ERROR <> 0 )
BEGIN
/**//*---------- 自定义错误输出 ----------*/
RAISERROR( 'Insert data error!',16,1 )
/**//*-------- 事务回滚 --------*/
ROLLBACK TRANSACTION tran_test
END

/**//*------- 判断事务数是否大于0 -----------*/
IF ( @@TRANCOUNT > 0 )
BEGIN
/**//*-------- 事务回滚 --------*/
ROLLBACK TRANSACTION tran_test
END
GO