作者:mobiledu2502905277 | 来源:互联网 | 2023-05-18 01:57
在PL/SQl过程中定义一个游标,游标所用的表名是外部程序传入的,
但Oracle认为表名是一个字符串,
请问可有办法做到。谢谢!!!
10 个解决方案
请mnbvcxz写详细点好吗(最好有一段程序)?
DBMS_SQL 是可以但是不方便,谢谢
以前用过pl/vision公司的一套package,其中对于动态游标处理的很方便,不过效率挺低。
现在找不到了,有哪位朋友能共享一下?
:)
例如:
在Developer 2000中
外层循环:
Cursor C1 is Select Table_name from cat ;
内层循环为:
cursor C2 is Select * From C1.Table_name;
我自己认为不可能完成此功能,不知别人有何看法。
Dbms_sql可以执行动态SQL语句但是
只能检索结果,
如果我要v_value := C2.Name则肯定不行。
各位大侠有何高见?
斑竹;
请删掉这个贴子吧,
我看着就难受。
其实我知道这是Oracle本身的限制,
但我以为有人能突破它,看来只好等Oracle公司自己来了。
procedure Test_Cur(TableName IN VARCHAR2) IS
type RefCurT IS REF CURSOR;
RefCur RefCurT;
BEGIN
Open RefCur For 'Select * from' || TableName ;
......
END;
你试一试。