zoukankan      html  css  js  c++  java
  • Oracle存储过程跟踪错误的方法

    1.首先创建用于保存错误信息的表

    CREATE  TABLE  TBL_PROC_ERRMSG
    (
       BIZ_CODE VARCHAR2(50),
       ERR_LINE VARCHAR2(10),
       ERR_CODE VARCHAR2(10),
       MSG      VARCHAR2(200),
       CRT_TM    DATE  DEFAULT  SYSDATE
    );

    2.创建保存错误信息的存过 

    CREATE  OR  REPLACE  PROCEDURE  PROC_SAVE_ERRMSG(BIZCODE    IN  VARCHAR2,
                                                  ERRORLINE  IN  VARCHAR2,
                                                  ERRORCODE  IN  VARCHAR2,
                                                  MSG        IN  VARCHAR2)  IS
       /*必须要使用自治事务,否则commit会影响调用程序事务*/
       PRAGMA AUTONOMOUS_TRANSACTION;
    BEGIN
       INSERT  INTO  TBL_PROC_ERRMSG
         (BIZ_CODE, ERR_LINE, ERR_CODE, MSG)
       VALUES
         (BIZCODE, ERRORLINE, ERRORCODE, MSG);
       COMMIT ;
    END ;
    CREATE  OR  REPLACE  PROCEDURE  PROC_SAVE_ERRMSG(BIZCODE    IN  VARCHAR2,
                                                  ERRORLINE  IN  VARCHAR2,
                                                  ERRORCODE  IN  VARCHAR2,
                                                  MSG        IN  VARCHAR2)  IS
       /*必须要使用自治事务,否则commit会影响调用程序事务*/
       PRAGMA AUTONOMOUS_TRANSACTION;
    BEGIN
       INSERT  INTO  TBL_PROC_ERRMSG
         (BIZ_CODE, ERR_LINE, ERR_CODE, MSG)
       VALUES
         (BIZCODE, ERRORLINE, ERRORCODE, MSG);
       COMMIT ;
    END ;

    3.使用示例 

    --存过过程实现主体
    EXCEPTION
       WHEN  OTHERS  THEN
         PROC_SAVE_ERRMSG(biz_code /*此变量用于查找错误记录标记*/ ,DBMS_UTILITY.format_error_backtrace,sqlcode,SQLERRM);
    END ;
    

      

    --存过过程实现主体
    EXCEPTION
       WHEN  OTHERS  THEN
         PROC_SAVE_ERRMSG(biz_code /*此变量用于查找错误记录标记*/ ,DBMS_UTILITY.format_error_backtrace,sqlcode,SQLERRM);
    END ;
  • 相关阅读:
    如何只用5分钟完成数据 列表、创建页面
    从零开始搭建一个PaaS平台
    C# 多线程猜想
    使用Golang + lua实现一个值班机器人
    如何使用Golang实现一个API网关
    记一次Windb死锁排查
    怎样在PaaS平台上搭建一个会自动关闭的会议室
    JS Object To C# ASP.Net ModelBind
    重写了一遍授权思路
    授权详细设计
  • 原文地址:https://www.cnblogs.com/dll102/p/15667359.html
Copyright © 2011-2022 走看看