存儲過程中的事務

存儲過程中的事務:

--傳入一個金額,自動的從轉到,寫成存儲過程

 

CREATE PROC usp_ZZ

@mon INT =0

AS

BEGIN

DECLARE @sumerr INT =0---默認值必須加

BEGIN TRANSACTION

 

UPDATE dbo.bank SET balance =balance-@mon WHERE cId='0001'

SET @sumerr=@sumerr+@@ERROR

UPDATE dbo.bank SET balance =balance+@mon WHERE cId='0002'

SET @sumerr=@sumerr+@@ERROR

 

IF(@sumerr >0)

BEGIN

ROLLBACK TRANSACTION

END

ELSE

BEGIN

COMMIT TRANSACTION

END

END

 

 

EXEC usp_ZZ 1000

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章