试图制作一个通用的 PL/SQL 程序以特定的 XML 格式导出数据,例如 Excel XML。假设该过程接受带有 SELECT 查询的字符串以立即执行。
这需要访问结果行集的每一列的数据类型,因为该过程是通用的,所以只有在运行查询后才知道这些数据类型。
我尝试了一种使用临时表的方法,但是对于编译表的过程必须存在并且在编译时知道其结构。
接下来如何处理 EXECUTE IMMEDIATE 结果的行和列,以分析每个值的类型并发出适当的 XML 片段?
你不能用 EXECUTE IMMEDIATE 做到这一点。您将不得不使用更强大(也更复杂)的DBMS_SQL 包- 我已将您链接到 DESCRIBE_COLUMNS 过程,该过程特别相关。
或查询 ALL_TAB_COLS 以获取列数据类型。