首页 > 代码库 > oracle存储过程错误跟踪
oracle存储过程错误跟踪
1.首先创建用于保存错误信息的表
1 2 3 4 5 6 7 8 | 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.创建保存错误信息的存过
1 2 3 4 5 6 7 8 9 10 11 12 13 | 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.使用示例
1 2 3 4 5 | --存过过程实现主体 EXCEPTION WHEN OTHERS THEN PROC_SAVE_ERRMSG(biz_code /*此变量用于查找错误记录标记*/ ,DBMS_UTILITY.format_error_backtrace,sqlcode,SQLERRM); END ; |
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。