rollback是针对事务的,你如果没有在执行语句之前开启事务,那么无法rollback,建议你还是想别的办法吧,事务语句如下(sqlserver的给你借鉴):--开启事务begin tran --执行操作update Accounts_UsersExp set TelPhone=123456 where userid=14--执行错误事务回滚rollback--如果正确进行事务提交commit可以勾选一句执行一句,但是commit了就不能rollback
(1) set ANSI_NULLS ON --见图1 set QUOTED_IDENTIFIER ON go ALTER proc [dbo].[procname] as begin begin transaction DECLARE @myerror INT delete from tbname SET @myerror=@myerror+@@ERROR SET @myerror=@myerror+@@ERROR begin rollback transaction end else beg
sql proc触发异常处理回滚 针对proc嵌套proc很有用 begin begin try begin tran --判断错误 BEGIN --ROLLBACK TRAN SET @vcResult = '添加失败' ,) END commit tran end try begin catch ROLLBACK TRAN ; --@@tranCount = 1 代表开启事物的个数,如果嵌套调用开启了两个事物,则在外部事物回滚 end catch end