Oracle10g/11g, scrollable cursors, and JDBC scrollable result

From: jms <jesus.m.salvo_at_gmail.com>
Date: Tue, 30 Sep 2008 16:51:50 -0700 (PDT)
Message-ID: <02a1c0fd-8c63-42b7-a75b-0a3c138eb420@w32g2000hsf.googlegroups.com>


According to the following documents from Oracle's JDBC drivers for 10g and 11g:

http://download.oracle.com/docs/cd/B19306_01/java.102/b14355/resltset.htm#CIHCHBJB

http://download.oracle.com/docs/cd/B28359_01/java.111/b31224/resltset.htm#CIHCHBJB

To quote:

"Oracle JDBC Implementation for Result Set Scrollability

Because the underlying server does not support scrollable cursors, Oracle JDBC must implement scrollability in a separate layer.

It is important to be aware that this is accomplished by using a client-side memory cache to store rows of a scrollable result set.

Important:
Because all rows of any scrollable result set are stored in the client- side cache, a situation where the result set contains many rows, many columns, or very large columns might cause the client-side Java virtual machine (JVM) to fail. Do not specify scrollability for a large result set."

But Oracle's own documentation for the database server itself says that it does support scrollable cursors:

http://download.oracle.com/docs/cd/B19306_01/server.102/b14220/sqlplsql.htm#sthref3449

So the question is ... what does Oracle's JDBC thin driver actually do ?? Does it use a scrollable cursor or not ? If not, which one does ?

John Received on Tue Sep 30 2008 - 18:51:50 CDT

Original text of this message