java.sql.SQLException: Exhausted Resultset
I get the error java.sql.SQLException: Exhausted ResultSet to run a query against an Oracle database. The connection is via a connection pool defined in Websphere. The code executed is as follows:
if (rs! = null) (
while (rs.next ()) (
count = rs.getInt (1);
)
)
I note that the resultset contains data (rs.next ())
Thanks
Solution 1:
I've seen this error while trying to access a column value after processing the resultset.
if (rs != null) {
while (rs.next()) {
count = rs.getInt(1);
}
count = rs.getInt(1); //this will throw Exhausted resultset
}
Hope this will help you :)
Solution 2:
Try this:
if (rs != null && rs.first()) {
do {
count = rs.getInt(1);
} while (rs.next());
}
Solution 3:
If you reset the result set to the top, using rs.absolute(1)
you won't get exhaused result set.
while (rs.next) {
System.out.println(rs.getString(1));
}
rs.absolute(1);
System.out.println(rs.getString(1));
You can also use rs.first() instead of rs.absolute(1), it does the same.
Solution 4:
When there is no records returned from Database for a particular condition and When I tried to access the rs.getString(1); I got this error "exhausted resultset".
Before the issue, my code was:
rs.next();
sNr= rs.getString(1);
After the fix:
while (rs.next()) {
sNr = rs.getString(1);
}
Solution 5:
This exception occurs when the ResultSet is used outside of the while loop. Please keep all processing related to the ResultSet inside the While loop.