Welcome to Sign in | Help

Re: modificare sql proc - deadlock sql server 2008

  •  03-29-2011, 1:41 PM

    Re: modificare sql proc - deadlock sql server 2008

    Multumesc pt raspuns.
    Pt varianta 2 este ok asa?

    CREATE proc VirareSal
    @ImportRef int,
    @IBANAngajat varchar(50) ,
    @ContD varchar(50),
    @Suma money,
    @ContC varchar(50),
    @DataTr datetime,
    @DataExec datetime,
    @Comment varchar(200)
    as
    set nocount on
    declare @text varchar(200)
    BEGIN TRY
    BEGIN TRAN
    if exists(select top 1 1 from V_SAL where ImportRef = @ImportRef and Virat = 0 and IBAN = @IBANAngajat)
    begin
    exec ExecTran @ContD, @Suma, @ContC, @DataTr, @DataExec, @Comment

    update V_SAL
    set Virat = 1
    where ImportRef = @ImportRef and IBAN = @IBANAngajat and Virat = 0
    end
    else
    begin
    set @text = 'Suma a fost virata deja pt IBAN: ' + @IBANAngajat
    raiserror(@text, 1, 1)
    end
    COMMIT TRAN
    END TRY
    BEGIN CATCH
    if @@trancount > 0 ROLLBACK TRAN
    declare @ERROR_MESSAGE nvarchar(4000),
    @ERROR_SEVERITY int
    select @ERROR_MESSAGE = ERROR_MESSAGE() + ' in SP: ' + isnull(ERROR_PROCEDURE() + ' line ' + convert(nvarchar, ERROR_LINE()), ''),
    @ERROR_SEVERITY = ERROR_SEVERITY()

    raiserror(@ERROR_MESSAGE, @ERROR_SEVERITY, 1)
    return -1
    END CATCH
    go
View Complete Thread
Powered by Community Server (Commercial Edition), by Telligent Systems