如何运行程序?

12 oracle plsql

这里的包..

CREATE OR REPLACE PACKAGE G_PKG_REFCUR AS
    TYPE rcDataCursor IS REF CURSOR;
END;
Run Code Online (Sandbox Code Playgroud)

我们来考虑PROC ..

Create procedure gokul_proc(
    pId in number,
    pName in varchar2,
    OutCur OUT G_PKG_REFCUR.rcDataCursor ) is
BEGIN
    Open OutCur For
        select * from gokul_table ob 
        where ob.active_staus-'Y' AND ob.id=pId AND ob.name=pNname;
END;
Run Code Online (Sandbox Code Playgroud)

这是我的问题:我该如何执行此程序?

如果没有OutCur参数,那么我可以像这样执行..

EXEC gokul_proc(1,'GOKUL');
Run Code Online (Sandbox Code Playgroud)

但问题是OutCur.我不知道这里要传递哪个值.

例如

EXEC gokul_proc(1,'GOKUL', ??????);
Run Code Online (Sandbox Code Playgroud)

我只需要知道作为过程的参数传递什么值.

Ton*_*ews 21

在SQL Plus中:

VAR rc REFCURSOR
EXEC gokul_proc(1,'GOKUL', :rc);
print rc
Run Code Online (Sandbox Code Playgroud)