You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user-java@ibatis.apache.org by Amit Kushwaha <bl...@googlemail.com> on 2006/05/16 11:27:35 UTC

Optimize fetches for stored procedures

Hi All,

We need to use iBATIS to map Oracle stored procedure returning result-sets
to domain objects. The stored procs could return huge result-sets all of
which may not be used in the view.  And we would like to,

1. Limit the number of results returned by the SQL using a SQL clause
2. Optimize the result set fetches by getting a batch of rows from the
database per database round-trip.

So the query is for the 2nd point,

Does setting of fetch size on the Statement (BaseStatement) have an effect
getting more rows out per round trip for
a CallableStatement?

Reading the source a bit, the SqlExecutor's executeQueryProcedure is used
for executing the stored procedure? It doesnt seem to be changing the
statement's fetch size as is done by the SqlExecutor's executeQuery method.
Though this may work only for specific databases, JDBC has the option of
setting the fetch size on the Statement and Oracle drivers supports this
from the docs,

http://download-east.oracle.com/docs/cd/A91202_01/901_doc/java.901/a90211/resltset.htm#1023642

Is the analysis correct?

Thanks,

Amit Kushwaha

==============================================================