Women in Technology

Hear us Roar

  Stored Procedures for Java Programmers
Subject:   JDBC support for Cursors
Date:   2003-08-15 10:45:59
From:   gokulsingh
<extract>Because returning cursors from procedures is not directly supported by JDBC, we use Types.OTHER to declare the return type of the procedure and then cast from the call to getObject().</extract>

JDBC does support returning of Cursors as ResultSet. The javadocs state the following :

"A CallableStatement can return one ResultSet or multiple ResultSet objects. Multiple ResultSet objects are handled using operations inherited from Statement."

I have worked with stored procedures on DB2 where a open cursor in the stored procedure was returned as a result set via the method CallableStatement.executeQuery().

Main Topics Oldest First

Showing messages 1 through 1 of 1.

  • JDBC support for Cursors
    2003-08-15 13:14:07  nferrier [View]

    Hi Gokul.

    Technically you're right, but most DBMS don't seem to support this style. Maybe it has just escaped most people attention, tucked away in the javadoc there. I'm not sure from what version it came into being.

    I think the getObject() style works on DB2 as well though, doesn't it? Whereas doing:

    ResultSet rs = someCallable.executeQuery();

    definitely doesn't work on (at least) early version of Oracle JDBC and not at all on PostgreSQL (I know coz I wrote the PG support).