如何遍历oracle pl / sql游标中的列

时间:2010-04-09 14:58:23

标签: oracle plsql

我正在创建一个动态游标,我想循环遍历游标中的列。我该怎么做?

例如:

create or replace procedure dynamic_cursor(empid in varchar2, RC IN OUT sys_refcursor) as
     stmt varchar2(100);
   begin
     stmt := 'select * from employees where id = ' || empid;
     open RC for stmt using val;

     for each {{COLUMN OR SOMETHING}}
       --TODO: Get this to work
     loop;
end;     

1 个答案:

答案 0 :(得分:3)

您需要使用Oracle Dynamic SQL,最有可能使用method 4

编辑: 对不起,以上是针对Pro * C的。您需要使用DBMS_SQL包。它相当复杂,但允许您在运行时解析,执行和获取所需的任意SQL语句。特别是,看看例子3和8。