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 ;
  • 相关阅读:
    如何追MM?
    梦里蓝天
    数据仓库USEFUL LINKS(不断更新中)
    The day of blog
    Data Warehouse Architectures in an Internet Age
    数据仓库的数据存储 [转]
    阿里汉的7宗罪
    数据仓库中的一些争议之我见(一)
    java 字符串替换,分割基础
    java 时间比较随笔
  • 原文地址:https://www.cnblogs.com/dll102/p/15667359.html
Copyright © 2011-2022 走看看