Sql Server 中事务(begin tran/commit tran/rollback tran)的用法

时间:2021-12-09 06:46:26

ALTER PROCEDURE [dbo].[Proc_Test_commit1]

    @result int output, --成功 1; 失败 0
    @message nvarchar(20) output
AS
BEGIN
    SET NOCOUNT ON
     
begin try
      begin tran yy
        insert into Test_Commit (b) values (3)
 
        insert into Test_Commit (a,b) values (1,3)
        set @result=1
      commit tran yy           
                  end try  
begin catch
        set @message= ERROR_MESSAGE()
        set @result=0
        rollback tran yy       
        --insert into SYS_Proc_Message([Message]) values(ERROR_MESSAGE())
        print ERROR_MESSAGE()
end catch
     
    SET NOCOUNT OFF
     
     
END