在Oracle SQL开发人员中,如果我们从查询浏览器运行过程,如何查看输出

uma*_*hod 0 oracle plsql oracle-sqldeveloper

当我编译并运行程序时,我有点惊讶

在此输入图像描述

绿色按钮如pic1所示,我从输出变量得到输出.

这是我的简单代码:

CREATE OR REPLACE PROCEDURE RUNPROCEDURE
    (P_para1  in EMP.ID%type,P_PARA out SYS_REFCURSOR) 
AS 
BEGIN
    OPEN P_PARA FOR
       SELECT * 
       FROM emp 
       WHERE ID = P_para1;
END RUNPROCEDURE;
Run Code Online (Sandbox Code Playgroud)

但是当我从查询浏览器运行时,我没有看到任何输出:=

set serveroutput on;
declare P_PARA1 number;
    P_PARA SYS_REFCURSOR;
begin
    RUNPROCEDURE(
        P_PARA1 => 2,
        P_PARA => P_PARA
    ) ;
end;
/
Run Code Online (Sandbox Code Playgroud)

它只是显示

PL/SQL procedure successfully complete
Run Code Online (Sandbox Code Playgroud)

我没有看到任何输出.

任何帮助赞赏.

Bob*_*ica 5

此过程的唯一输出是输出参数游标.SQL Developer提供了一种半自动迭代此游标的方法,而SQL*Plus没有 - 但是你的过程没有"返回"那些行,它返回游标.某处必须有代码来迭代光标,获取行,并显示这些行的内容.