34,838
社区成员




CREATE procedure SBP_zz_hyzlxg
@gzid char(20),@djlxbs char(3)
as
declare @errcode integer
set @errcode=2210
declare @return integer
set @return=0
declare @tran_point int
set @tran_point=@@trancount
if @tran_point=0
begin tran tran_phtz
else
save tran tran_phtz
update spkfjc set kcshl=kcshl-@kcshl where spid=@spid
--这个地方的条件改变有很多上面只是一个小部分
----我的问题是要是我的更新的结果不能满足我的条件我应该怎么返回更新之前??????????????????????????
if @tran_point=0
commit tran tran_phtz
goto return_lab
err_lab:
if @return<10 set @return=@errcode +@return
rollback tran tran_phtz
return_lab:
return @return
GO
CREATE procedure SBP_zz_hyzlxg
@gzid char(20),@djlxbs char(3)
as
declare @errcode integer
set @errcode=2210
declare @return integer
set @return=0
BEGIN TRAN
update spkfjc set kcshl=kcshl-@kcshl where spid=@spid
--这个地方的条件改变有很多上面只是一个小部分
----我的问题是要是我的更新的结果不能满足我的条件我应该怎么返回更新之前??????????????????????????
IF 你的条件不能满足
ROLLBACK TRAN
ELSE
COMMIT TRAN
END
goto return_lab
err_lab:
if @return<10
set @return=@errcode +@return
return_lab:
return @return
GO