0

我正在使用 SQL Developer 版本 17.2.0.188。当我编译代码时,会导致一些错误,例如 begin raise_application_error(-20001, 'xxxxx'); 结尾;

我在脚本输出中看到错误消息(如 dbms_output),但我想在新窗口中看到它,类似于声明一些绑定变量时:variable_name number := &value; 有人可以告诉我在 SQL Developer 中的哪个位置可以更改设置以使该窗口可见吗?

我在此版本的 SQL 开发人员中没有选项:工具 -> 首选项 -> 用户界面 -> 选项 -> DSA 对话框...

最好的问候,德克。

4

1 回答 1

2

Oracle SQL Developer 不能以这种方式工作。错误消息将写入脚本输出或查询结果面板,具体取决于您的代码是分别通过 F5 还是 F9 执行的。

PL/SQL 编译器警告和错误被写入日志 - 编译器面板。

在此处输入图像描述

create or replace procedure xyz123 is
begin
 null
end;
/

show errors

此外,如果您想查看包含的 DBMS_OUTPUT,请设置 SERVEROUTPUT ON。它将被写入脚本输出面板。

在此处输入图像描述

现在,关于引发异常,这仍然发生在 PL/SQL 块中,我们仍然会通过 F5(脚本输出)执行它。

从SO答案借来的代码

DECLARE
    ex_custom EXCEPTION;
    PRAGMA exception_init ( ex_custom,-20001 );
BEGIN
    raise_application_error(
        -20001,
        'This is a custom error'
    );
EXCEPTION
    WHEN ex_custom THEN
        dbms_output.put_line(sqlerrm);
END;

用 F5 执行,然后...

在此处输入图像描述

于 2018-04-03T21:00:50.940 回答