将多个引用游标从 Oracle 过程返回到 Java
Posted
技术标签:
【中文标题】将多个引用游标从 Oracle 过程返回到 Java【英文标题】:Returning multiple ref cursors from Oracle procedure to Java 【发布时间】:2012-09-19 02:57:18 【问题描述】:在我们的 Web 应用程序中,一个模块中有 18 个屏幕。 我们的用户希望将 18 个屏幕的所有数据放在一个页面中,以便他们可以一次打印全部数据。
所以,我编写了一个 Oracle 程序,它获取所有 18 个屏幕(来自 20 - 22 个表)的数据。 这个 Oracle 过程将 13 个游标返回到我的 Java 程序。
页面的性能很好,我得到了想要的结果。
但是,将这么多游标返回给 Java 会产生任何问题吗?
【问题讨论】:
确保在获取记录后关闭java中的所有游标。 【参考方案1】:单个会话的最大打开游标数由OPEN_CURSORS
参数控制(默认值为 50,通常扩展为数百个)。
如果按照@Polppan 的建议在完成获取游标后正确关闭游标,那么同时打开 18 个游标应该没有问题。
由于游标只是指向查询的指针,因此通过网络一次返回其中的 18 个也没有问题。
【讨论】:
以上是关于将多个引用游标从 Oracle 过程返回到 Java的主要内容,如果未能解决你的问题,请参考以下文章