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
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
举个事务操作的简单例子。