首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

存储过程中是否能实现像事务那样的回滚功能,该怎么处理

2012-02-01 
存储过程中是否能实现像事务那样的回滚功能各位好,小弟现在有个问题想请问大家一下,就是在我的存储过程中

存储过程中是否能实现像事务那样的回滚功能
各位好,小弟现在有个问题想请问大家一下,就是在我的存储过程中有多条SQL语句,我想实现像事务那样的功能,当第二条SQL语句执行失败时就回滚,这样第一条SQL语句也就没有执行了,请问该怎么实现啊

[解决办法]
参考下:
CREATE PROCEDURE PRO_NAME
....
AS
BEGIN TRANSACTION

--操作

IF(@@ERROR <> 0)
BEGIN
GOTO ERROR_LABEL
END

--操作

IF(@@ERROR <> 0)
BEGIN
GOTO ERROR_LABEL
END
--操作

IF(@@ERROR <> 0)
BEGIN
GOTO ERROR_LABEL
END

COMMIT TRANSACTION

RETURN

ERROR_LABEL:
BEGIN
ROLLBACK TRANSACTION
END
GO

热点排行