ORACLE数据库11g提供了一个报警功能,能够帮助识别出会忽略或者吞掉错误的程序。
下面例子:
-
ALTER SESSION SET plsql_warnings='enable:all';
-
CREATE OR REPLACE PROCEDURE test01_demo
-
AS
-
BEGIN
-
DBMS_OUTPUT.PUT_LINE('I am here!');
-
RAISE NO_DATA_FOUND;
-
EXCEPTION
-
WHEN OTHERS
-
THEN NULL;
-
END test01_demo;
-
/
可以识别出错误提示
SP2-0804: Procedure created with compilation warnings
Errors for PROCEDURE PLW6009_DEMO:
LINE/COL ERROR
-------- -----------------------------------------------------------------
1/1 PLW-05018: unit PLW6009_DEMO omitted optional AUTHID clause;
default value DEFINER used
7/6 PLW-06009: procedure "PLW6009_DEMO" OTHERS handler does not end
in RAISE or RAISE_APPLICATION_ERROR
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31355629/viewspace-2132302/
,如需转载,请注明出处,否则将追究法律责任。