Oracle10g/11g, scrollable cursors, and JDBC scrollable result
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