zoukankan      html  css  js  c++  java
  • SQL Server Try Catch错误处理

    < DOCTYPE html PUBLIC -WCDTD XHTML StrictEN httpwwwworgTRxhtmlDTDxhtml-strictdtd>
    一。语法要点:
    BEGIN TRY
    { sql_statement ¦ statement_block }
    END TRY
    BEGIN CATCH
    [ { sql_statement ¦ statement_block } ]
    END CATCH
    [ ; ]

    异常部分:
    在 CATCH 块的作用域内,可以使用以下系统函数来获取导致 CATCH 块执行的错误消息:
    ERROR_NUMBER() 返回错误号。
    ERROR_SEVERITY() 返回严重性。
    ERROR_STATE() 返回错误状态号。
    ERROR_PROCEDURE() 返回出现错误的存储过程或触发器的名称。
    ERROR_LINE() 返回导致错误的例程中的行号。
    ERROR_MESSAGE() 返回错误消息的完整文本。 该文本可包括任何可替换参数所提供的值,如长度、对象名或时间。

    二。实例:
    Step 1:
    Create PROCEDURE SysLogError
    AS
    BEGIN
    Insert into SystemErrorLog
    (SPName,Description,LogTime)
    Values
    (ERROR_PROCEDURE(),Convert(nvarchar(MAX),ERROR_LINE()) + ':' + ERROR_MESSAGE(),GetDate())
    END

    Step 2:

    BEGIN TRY
        BEGIN TRANSACTION;

    。。。。

        COMMIT TRANSACTION;
    END TRY
    BEGIN CATCH
        IF @@TRANCOUNT > 0
        BEGIN
            ROLLBACK TRANSACTION;
        END

        EXECUTE [dbo].[SysLogError];
    END CATCH;

  • 相关阅读:
    【2019-12-13】泛型
    【2019-12-12】函数
    【2019-12-10】类
    【2019-12-05】接口
    【2019-12-3】变量声明
    【2019-11-24】基础类型
    【2019-11-20】服务与DI简介
    【2019-11-20】组件简介
    android之ListView与Adapter(结合JavaBean)
    android基类Adapter
  • 原文地址:https://www.cnblogs.com/netcorner/p/2912096.html
Copyright © 2011-2022 走看看