另一个程序使用的函数处理异常我有这样的功能:从在Oracle SQL Developer中
CREATE OR REPLACE FUNCTION TEST_FUNCTION (p_test IN NUMBER) RETURN NUMBER
AS
my_exception EXCEPTION;
PRAGMA EXCEPTION_INIT(my_exception, -20001);
BEGIN
IF (p_test = 0) THEN
RAISE my_exception;
ELSE
RETURN 1;
END IF;
EXCEPTION
WHEN my_exception THEN
raise_application_error(-20001, 'p_test = 1');
RETURN 0;
END;
存在使用我的函数的过程。问题是,当我的函数引发错误20001
时,该过程无法处理异常;当我尝试编译它时,我得到了PLS-00201: identifier my_exception must be declared
。
如果我在不处理此异常的情况下运行该过程,它仍会抛出异常和错误代码,并停止执行。我该如何处理my_exception
?