前提・実現したいこと
JDBCのexecuteBatchによる複数SQL送信について。
データベース内にテーブルは3つあります。
そのテーブルに登録されている件数を表示させるコードを書いています。
発生している問題・エラーメッセージ
http://www.techscore.com/tech/Java/JavaEE/JDBC/2-3/
↑を参考にaddBatchを使って3つのテーブルのcount文を一斉に送信したのですが、なかなかうまく取得できず、COUNT数を取る方法がいまいちよく分かりません。
該当のソースコード
Java
1try { 2Connection con = DriverManager.getConnection("jdbc:h2:~/hoge"); 3Statement pstmt = con.createStatement(); 4pstmt.addBatch("SELECT COUNT(SERIALNO) FROM TABLE1;"); 5pstmt.addBatch("SELECT COUNT(SERIALNO) FROM TABLE2;"); 6pstmt.addBatch("SELECT COUNT(SERIALNO) FROM TABLE3;"); 7int result[] = pstmt.executeBatch(); 8pstmt = con.createStatement(); 9 10while(rs.next()) { 11int hoge1Count = rs.getInt("COUNT"); 12int hoge2Count = rs.getInt("COUNT"); 13int hoge3Count = rs.getInt("COUNT"); 14hoge1.setText("HOGE1は" + hoge1Count + "件"); 15hoge2.setText("HOGE2は" + hoge2Count + "件"); 16hoge3.setText("HOGE3は" + hoge3Count + "件登録されています。"); 17} 18} catch (SQLException e) { 19e.printStackTrace(); 20}
回答1件
あなたの回答
tips
プレビュー