java.sql.SQLException: ResultSet.nextはコールされませんでした。
JDBCでテーブルのカウントを取得するSQLを発行したところ、SQLExceptionが発生。発生したのは以下のコード。
・・・前半省略・・・ ResultSet rs = stmt.executeQuery( "SELECT COUNT(*) FROM SAMPLE" ) ; int recCnt = rs.getInt(1);
これは、executeQueryを呼び出し1行だから、レコード移動は気にせず1回だけgetIntで値参照をすればいいと考えたことの間違い。executeQueryが終わった時点ではカーソルは何も示していないため、取得対象がnullで落ちるという問題。
対応は簡単で、以下の様に executeQuery の後にrs.next()を呼んでやればいい。
・・・前半省略・・・
ResultSet rs = stmt.executeQuery( "SELECT COUNT(*) FROM SAMPLE" ) ;
rs.next();
int recCnt = rs.getInt(1);