将多个引用游标从 Oracle 过程返回到 Java

ven*_*nki 5 java plsql

在我们的 Web 应用程序中,我们在一个模块中有 18 个屏幕。我们的用户希望在一页中包含 18 个屏幕的所有数据,以便他们可以一次打印整个数据。

因此,我编写了一个 Oracle 过程,它获取所有 18 个屏幕(从 20 - 22 个表)的数据。这个 Oracle 过程向我的 Java 程序返回 13 个游标。

页面的性能很好,我得到了想要的结果。

但是,将那么多游标返回给 Java 会产生什么问题吗?

Vin*_*rat 4

单个会话打开的游标的最大数量由参数控制OPEN_CURSORS(默认值 50,通常扩展为数百)。

如果按照@Polppan的建议,在完成获取游标后正确关闭游标,则 18 个同时打开的游标应该没有问题。

由于游标只是指向查询的指针,因此通过网络一次返回 18 个查询也没有问题。