我有一个返回 open 的函数SYS_REFCURSOR
。该函数构建并执行几个不同的 SQL 查询并返回该游标。
我在 PHP 中使用该游标来获取结果,但性能不是很好,因为游标数据无法预取,并且每一行都有到数据库服务器的往返行程。
我想我会通过创建流水线函数来加快速度,该函数将光标作为参数并将行流水线化。
如何编写一个获取任何 sys_refcursor 作为参数并输出该游标的任何行类型的集合的表函数?
这么久以来,我已经编写了流水线表函数,但它们都是强类型的。在这种情况下,我宁愿不为每种可能的游标类型编写 n 次行类型、表类型和单独的表函数......
编辑
从获取数据的问题SYS_REFCURSOR
隐藏在我们的 php 代码中。自版本 11gR2 起,预取就与 OCI 一起使用。
由于我已经修复了预取错误,因此性能已经足够,我不再需要开发通用表格功能。
谢谢大家的支持和评论。