Tor*_*o23 3 oracle plsql exception
据我所知,它RAISE_APPLICATION_ERROR关联的消息错误只对用户有意义.但用户是否只能通过以下方式编写类似的异常?
DECLARE
e_negative EXCEPTION;
BEGIN
IF v_sid < 0 THEN
RAISE e_negative;
...
EXCEPTION
WHEN e_negative THEN
DBMS_OUTPUT.PUT_LINE ('An id cannot be negative');
Run Code Online (Sandbox Code Playgroud)
raise_application_error不只是向控制台打印错误消息(就像dbms_output.put_line).
首先,它是一个实际错误 - 它使语句失败,终止当前块的执行,并传播到外部块(类似于throwJava或raisePython).
其次,无论控制台如何,它实际上都会返回此错误.dbms_output根据客户端的不同,可能会关闭或忽略消息.无论客户端如何,引发应用程序错误都可以返回失败的详细信息.
| 归档时间: |
|
| 查看次数: |
145 次 |
| 最近记录: |