Oracle 动态“SQL 选择”查询记录类型
Posted
技术标签:
【中文标题】Oracle 动态“SQL 选择”查询记录类型【英文标题】:Oracle Dynamic 'SQL select' query record type 【发布时间】:2011-06-25 14:35:20 【问题描述】:动态请求如下所示:
request := 'select * from ' || param_table_name || ' where ' || column_name_list;
然后我做:
open cur1 for request;
通过cur1
获取的记录的确切类型直到运行时才知道,因为它不应该对应用此过程的任何表施加任何限制。但是,我该如何遍历查询返回的内容呢?
【问题讨论】:
【参考方案1】:PL/SQL 游标不能用于编译时间未知的列。
在 PL/SQL 中使用完全动态查询的唯一方法是使用 PL/SQL 包 DBMS_SQL
。
更新:
Oracle 对DBMS_SQL 包进行了全面的描述,并附有许多示例。
【讨论】:
我知道有这样的包。这就是我所知道的一切,除非你告诉更多:) 我已经添加了一个指向包描述的链接。以上是关于Oracle 动态“SQL 选择”查询记录类型的主要内容,如果未能解决你的问题,请参考以下文章