如何在 PL/SQL Developer 中启用 dbms_output

Posted

技术标签:

【中文标题】如何在 PL/SQL Developer 中启用 dbms_output【英文标题】:How To Enable dbms_output in PL/SQL Developer 【发布时间】:2020-12-14 19:14:41 【问题描述】:

我知道这很简单,但我似乎找不到解决方案,如何在PL/SQL Developer 中启用 dbms_output。通过谷歌搜索,我得到的只是如何在 sql developer 中启用它,但这不是我想要的...... 我认为它应该在 PL/SQL Developer 中自动启用,但例如这个块对我没有任何输出。

declare
  v_sample employees.first_name%type;
begin
  select first_name 
  into v_sample
  from employees
  where employee_id = 100;

  dbms_output.put_line(v_sample);
end;

【问题讨论】:

只需在代码开头发出SET SERVEROUTPUT ON从命令行)。或者也可以使用DBMS_OUTPUT.ENABLE()。 (看看Output 标签) 感谢您的回答,但我在 SERVEROUTPUT 上收到 ORA-00922 缺失或无效选项错误。你知道为什么会这样吗? 这种情况不在 SQL 窗口 中使用,而是在命令行中使用。请摆脱它并查看 Output 选项卡(或 Test windowDBMS Output )。看到 select 语句的结果了吗? 好吧,我的错。它确实在命令行中工作。谢谢 不客气。好好学习。 【参考方案1】:

默认情况下,PL/SQL Developer 会自动检索 DBMS_OUTPUT,您无需执行任何额外操作即可检索它。您无需使用命令行窗口即可查看输出。 (而且您通常应该避免使用命令行窗口 - 这是一种糟糕的编程方式。)

转到配置 --> 首选项 --> Oracle --> 输出,并确保选中“启用”按钮:

另一种可能是 FIRST_NAME 值为 null 并且没有可输出的内容。为了避免这种混淆,我通常在输出变量之前添加一个硬编码值:

dbms_output.put_line('Name: ' || v_sample);

【讨论】:

以上是关于如何在 PL/SQL Developer 中启用 dbms_output的主要内容,如果未能解决你的问题,请参考以下文章

1.PL/SQL Developer的快捷键

pl sql developer应用问题

pl/sql developer中如何调试存储过程

pl/sql developer中如何调试存储过程

如何使用PL/SQL Developer查看和杀掉session

如何从 PL SQL Developer 的连接中找出 Oracle 连接字符串?