【问题标题】:sqldeveloper - DBMS_OUTPUT.PUT_LINE() Doesn't Worksqldeveloper - DBMS_OUTPUT.PUT_LINE() 不起作用
【发布时间】:2018-09-23 00:50:29
【问题描述】:

我正在尝试将传递给 DBMS_OUTPUT.PUT_LINE() 函数的值打印到 SQL Developer 中的 DBMS_OUTPUT 屏幕。无论我向函数传递什么,输出窗口中都不会打印任何内容。

我打开了 DBMS 输出窗口,甚至连接了可用的连接。但是在运行以下脚本时,在脚本输出窗口中只打印“PL/SQL 过程成功完成”,在 Dbms 输出窗口中没有任何内容。

我还将缓冲区大小设置为 30000,我想这足以打印字符串“test”。 运行命令 set serveroutput on 也不起作用。

当我在命令提示符下尝试 SQLPlus 中的相同脚本时,它工作正常并在打印“PL/SQL 过程成功完成”之前打印“测试”。

请帮助。谢谢。

【问题讨论】:

  • 我什至尝试重新安装应用程序并为此重新启动我的电脑:(

标签: plsql oracle-sqldeveloper dbms-output


【解决方案1】:

通过 Oracle 社区论坛,我了解到我使用的 SQL Developer 17.x 不支持 Oracle 10g。

旧版本的 SQL Developer 4.x 将支持 Oracle 10g 并检索 DBMS_OUTPUT 缓冲区以将其显示在屏幕上。

由于我只为我的家庭作业设置了一个小型数据库,并且不想降级到较旧的 SQL Developer,我升级到 Oracle 11g XE 并且它工作正常。提供给 DBMS_OUTPUT.PUT_LINE() 过程的所有输入现在都显示在 Dbms 输出窗口中。

【讨论】:

    【解决方案2】:

    屏幕上的最后一个窗格是“Dbms 输出”。单击其工具栏中的绿色“+”号,然后再次执行 BEGIN-END 块。

    【讨论】:

    • 我已经用我的数据库连接连接了输出窗口并运行了脚本。它似乎没有打印出来。
    • 我想你没听懂我在说什么(而且我不能上传图片 - 公司政策)。我不是在谈论 SQL Developer 窗口左上角的“+”号,它使您能够创建新连接 - 我说的是 左上角的“+”号Dbms 输出 窗格(位于整个 SQL Developer 窗口的下方和中间)。
    • 哦,不,我明白你的意思,如图所示,输出窗口有一个与我通过在 Dbms 中按绿色加号获得的连接同名的选项卡输出窗口。
    • 太糟糕了;我希望它会有所帮助。没有更多的想法,抱歉。
    【解决方案3】:

    如果其他人遇到这个 S.O 问题,我会添加此答案以帮助他们。

    我还在 SQL Developer 上打印 DBMS_OUTPUT 时遇到了困难,所以我放置了这个有用的链接,我发现它很好地解释了该机制的工作原理

    https://www.thatjeffsmith.com/archive/2012/03/dbms_output-in-sql-developer/

    【讨论】:

      猜你喜欢
      • 2019-12-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-13
      • 1970-01-01
      • 1970-01-01
      • 2011-06-22
      • 1970-01-01
      相关资源
      最近更新 更多