Plsql 从动态返回ref游标的函数中获取行
这是我创建的虚拟包,在函数测试中,select是动态的,平均数据列会发生变化。现在我的问题是,当我从任何其他过程或函数调用这个函数时,我得到了REF游标,那么如果我不知道它是动态返回哪个列,那么我怎么才能从那个游标中获取数据?< /P> < P>如果A1和A2是动态的,在运行时改变——你可以考虑使用DbMySQL而不是RefCurror。是一个如何动态获取行的示例,其中列的数量及其类型直到运行时才知道。您可以根据您的要求进行更改Plsql 从动态返回ref游标的函数中获取行,plsql,oracle11g,Plsql,Oracle11g,这是我创建的虚拟包,在函数测试中,select是动态的,平均数据列会发生变化。现在我的问题是,当我从任何其他过程或函数调用这个函数时,我得到了REF游标,那么如果我不知道它是动态返回哪个列,那么我怎么才能从那个游标中获取数据?< /P> < P>如果A1和A2是动态的,在运行时改变——你可以考虑使用DbMySQL而不是RefCurror。是一个如何动态获取行的示例,其中列的数量及其类型直到运行时才知道。您可以根据您的要求进行更改 CREATE OR REPLACE PACKAGE abc IS
CREATE OR REPLACE PACKAGE abc
IS
TYPE abc_cur IS REF CURSOR;
FUNCTION TEST
RETURN abc_cur;
END;
/
CREATE OR REPLACE PACKAGE BODY abc
IS
FUNCTION TEST
RETURN abc_cur
IS
v_select VARCHAR2(2000);
BEGIN
v_select := 'Select a1,a2 from pqr';
OPEN abc_cur FOR v_select;
RETURN abc_cur;
END TEST;
END abc;