getMoreResults() returns false incorrectly - Mailing list pgsql-interfaces

From Bob Kline
Subject getMoreResults() returns false incorrectly
Date
Msg-id Pine.LNX.4.10.10006171414590.30675-100000@rksystems.com
Whole thread Raw
List pgsql-interfaces
I tried to search the list archives, but the search engine appears to be
broken (comes back with an http 404 error).

Using the Postgresql JDBC driver (I'm testing with jdbc7.0-1.1.jar) it
appears that Statement.getMoreResults() returns false even if there is a
result set from the query just executed.
   Statement stmt = conn.createStatement();   stmt.execute("SELECT * FROM t");   if (stmt.getMoreResults()) {
ResultSetrs = stmt.getResultSet();       while (rs.next()) {           // process row ....       }   }
 

The call to getMoreResults() returns false consistently.  If the call is
replaced with 'if (true) ...' then the code to get the result set and
process the rows works fine.

Accoring to the JDBC docs, this method should return "true if the next
result is a ResultSet; false if it is an update count or there are no
more results."  There is no update count (as confirmed by
getUpdateCount()).

Is this a known problem?  If this method doesn't work as documented,
it's impossible to "work with an unknown SQL string" as the
documentation for execute() indicates we should be able to (without
parsing the SQL query).

-- 
Bob Kline
mailto:bkline@rksystems.com
http://www.rksystems.com



pgsql-interfaces by date:

Previous
From: Constantin Teodorescu
Date:
Subject: Re: pgaccess deletes function in database
Next
From: Adrien Hernot
Date:
Subject: ODBC malfunction ?