【问题标题】:SQLDeveloper Does not start in debug modeSQLDeveloper 不在调试模式下启动
【发布时间】:2015-01-29 19:26:50
【问题描述】:

我正在尝试在调试模式下运行sql developer,但出现以下错误。我关闭了windows机器上的防火墙。 (我认为我的防病毒防火墙仍然打开,我不确定它是否导致)

Executing PL/SQL: CALL DBMS_DEBUG_JDWP.CONNECT_TCP( 'xx.xx.xxx.xx', '51814' )
ORA-30683: failure establishing connection to debugger
ORA-12535: TNS:operation timed out
ORA-06512: at "SYS.DBMS_DEBUG_JDWP", line 68
ORA-06512: at line 1

什么可能导致此问题?

另一个问题,我是 sql 开发人员 + PL/SQL 开发的新手。我在 pl/sql 代码中有很多 dbms_output.put_line(string) 语句。我需要看看它在打印什么,这是否只有在调试器打开时才会显示在 sql 开发人员日志/控制台中?

编辑: 如果调试器不需要打印dbms_output.putline 语句,那么我如何运行包中已经存在的方法并使其在 dbms 输出控制台中打印?

【问题讨论】:

    标签: sql oracle plsql oracle-sqldeveloper


    【解决方案1】:

    要查看 DBMS_OUTPUT 调用的结果,您需要在客户端中启用 DBMS_OUTPUT。在 SQL Developer 中,选择查看 -> Dbms 输出。在 Dbms 输出窗格中,单击绿色加号以启用输出处理。

    (PL/SQL 中的 DBMS_OUTPUT 调用只是将数据放入服务器内存中的缓冲区。为了实际看到输出,需要告知客户端获取并显示此缓冲区的内容。)

    【讨论】:

    • 我应该在现有的 pl/sql 包体中的某处启用调试吗?
    • @Zeus - 不,您只需要在客户端中启用它。除非出于某种原因,您的代码调用 dbms_output.disable 或调用 dbms_output.enable 时缓冲区大小太小。
    • 能否请您指向我们在客户端启用它的菜单/位置?
    猜你喜欢
    • 1970-01-01
    • 2014-09-12
    • 2018-04-26
    • 2015-12-25
    • 2014-03-05
    • 2014-01-20
    • 1970-01-01
    • 2011-09-21
    • 1970-01-01
    相关资源
    最近更新 更多