【问题标题】:dbms_output.put_line prints nothing in SQL Developer version 18.1.0.095dbms_output.put_line 在 SQL Developer 版本 18.1.0.095 中不打印任何内容
【发布时间】:2018-12-18 13:46:05
【问题描述】:

我的数据库是:

Oracle 数据库 10g 企业版 10.1.0.5.0 - 64 位

公司刚刚给了我一个带有 Windows 10 的新桌面。我安装了 SQL Developer 版本 18.1.0.095 Build 095.1630。一切正常,除了 dbms_output.put_line 不再打印任何内容。例如这个简单的脚本:

SET SERVEROUTPUT ON;
BEGIN
  dbms_output.put_line('hola');  
END;

只是给我这个:

而在 Windows 7 Professional 机器上,SQL Developer 版本 4.2.0.17.089 Build 17.089.1709 连接到同一个 oracle 实例,完全相同的脚本确实可以很好地打印出 hola。看:

此外,Toad 版本 12.12.0.39 执行此脚本并打印出 hola 没有问题。

我看到一个人在这里使用相同版本的 SQL Developer 有同样的问题:https://www.thatjeffsmith.com/archive/2012/03/dbms_output-in-sql-developer/ 检查评论部分。

这可能是版本 18.1.0.095 的错误吗?

【问题讨论】:

    标签: oracle-sqldeveloper dbms-output


    【解决方案1】:

    试试下面的

    设置服务器输出; 开始...

    【讨论】:

      【解决方案2】:

      答案就在这里:

      sqldeveloper - DBMS_OUTPUT.PUT_LINE() Doesn't Work

      这表示 SQL Developer 17 及更高版本不支持 Oracle 10g。

      难怪。

      我已经安装了 4.2 版,现在一切正常。

      【讨论】:

      • 我完全错过了问题中最重要的部分(10.1.0.5.0 - 64 位)——我们已经很久没有支持那个版本的 Oracle。我猜 12cR2 jdbc 驱动程序更新在某个时候“打破”了这一点 - 但你确实需要升级你的数据库。
      • 如果我有能力做出这样的决定,我会的。假设我想保留 SQL 开发人员版本 18.1,是否有任何 shim 或 hack 可以使 dbms_output.put_line 与 Oracle 10g 一起使用?
      • 我不知道。看看10g有多老,然后去看看18.1有多新。
      【解决方案3】:

      我正在使用 sql developer 18.x,其中一个评论线程的回答帮助了我。 答案:转到查看 -> DBMS 输出窗口, 运行脚本, 在 DBMS 输出窗口中查看输出。

      【讨论】:

        猜你喜欢
        • 2016-03-02
        • 2012-05-13
        • 1970-01-01
        • 2019-05-26
        • 2021-02-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多