0

我在 oracle 中使用 plsql 过程。我需要检索多行。我的部分代码..

CREATE OR REPLACE procedure PC_APP.Test_proc1( ) is
BEGIN

    SELECT * from table;

END;
4

2 回答 2

1
CREATE PROCEDURE  PC_APP.Test_proc1 (prc out sys_refcursor)
 IS
 BEGIN

 OPEN prc  for  SELECT * from mytable;

 END;
于 2012-12-02T18:40:59.650 回答
1

您将需要使用 Ref Cursors来允许从存储过程和函数返回记录集。

 CREATE PROCEDURE  PC_APP.Test_proc1 (prc out sys_refcursor)
 IS
 BEGIN

 OPEN prc  SELECT * from mytable;

 END;

在命令行上

SQL> var rc refcursor
SQL> execute prc(:rc)
SQL> print rc
于 2012-12-01T19:07:23.800 回答