Create or replace Procedure Proc_OracleToXml(tableName in varchar2)
as
Cursor sys_refcursor;
begin
/*现在要根据调用时传如 的表名取得该表中的 每一列的值 如何作到 ?*/
open Cursor for 'select * from '''||tableName ||'''';
loop
.....
end loop;
end; 出现的问题 如果用游标 因为表是动态的 那么表的列也是 动态的 很难取得表中的每一列的值?
用游标怎么做 ? 或则有什么其他的方法么 ? 谢谢了
as
Cursor sys_refcursor;
begin
/*现在要根据调用时传如 的表名取得该表中的 每一列的值 如何作到 ?*/
open Cursor for 'select * from '''||tableName ||'''';
loop
.....
end loop;
end; 出现的问题 如果用游标 因为表是动态的 那么表的列也是 动态的 很难取得表中的每一列的值?
用游标怎么做 ? 或则有什么其他的方法么 ? 谢谢了
loop
fetch cursor into ...
exit when cursor%notfound;
......
end loop;
CurData sys_refcursor;
myData tableName%Rowtype;
begin
open CurData for 'select * from '''||tableName||'''';
loop
fetch CurData into myData;
exit when CurData%notfound;
Dbms_Output.put_line(myData.列名); ----打出所有的列的值
end loop;
end;