存储过程中是否能实现像事务那样的回滚功能
各位好,小弟现在有个问题想请问大家一下,就是在我的存储过程中有多条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