[SQL Server] 存储过程事务
在存储过程中使用事务,以下为模板:
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
/**//*------- 判断事务数是否大于-----------*/
IF
(
@@TRANCOUNT
> 0 )
BEGIN
/**//*-------- 事务回滚--------*/
ROLLBACK
TRANSACTION tran_test
END
GO