使用oracle plsql过程如何获取表中的多行或全行

时间:2012-12-01 18:42:04

标签: sql oracle11g plsqldeveloper

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

CREATE OR REPLACE procedure PC_APP.Test_proc1( ) is
BEGIN

    SELECT * from table;

END;

2 个答案:

答案 0 :(得分: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

答案 1 :(得分:1)

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

 OPEN prc  for  SELECT * from mytable;

 END;