On Sat, 27 Oct 2007, Thomas Kellerer wrote:
> Now after running the procedure (using execute()) I'm (generically) calling
> getResultSet() on the statement object. And indeed the driver does return a
> ResultSet, but it seems that the actual result of the call is "hidden" inside
> one of the columns of the resultset. If I do a getObject() on that resultset
> I get another result set which indeed is the result of my SELECT in the
> procedure.
>
> My question: is there a reason why the "real" result cannot be obtained using
> getResultSet() but is wrapped into another ResultSet?
>
Consider what should be returned by:
SELECT 1, 'some text', func_returning_refcursor();
Or a function returning a refcursor as an out parameter.
Or a function returning a setof refcursor.
Just like you don't know exactly what you're executing, neither does the
driver.
Kris Jurka