操作手順
複数ResultSetのデータを同時に参照する場合、以下の手順で行います。
記述例
複数ResultSetのデータを同時に参照する場合の記述例を以下に説明します。
Statement stmt = con.createStatement(); (1) boolean retval = stmt.execute ("SELECT * FROM TBL1; SELECT * FROM TBL2"); (2) ResultSet rs1 = stmt.getResultSet(); (3) retval = stmt.getMoreResults (Statement.KEEP_CURRENT_RESULT); (4) if (retval == true) { ResultSet rs2 = stmt.getResultSet(); (3) while (rs1.next()) (5) { iID = rs1.getInt(1); (6) sName = rs1.getString(2); (6) System.out.println("ID = " + iID); (6) System.out.println("NAME = " + sName); (6) } while (rs2.next()) (5) { iID = rs2.getInt(1); (6) sName = rs2.getString(2); (6) System.out.println("ID = " + iID); (6) System.out.println("NAME = " + sName); (6) } } rs1.close(); (7) rs2.close(); (7) stmt.close(); (7) con.commit(); (8)
(1) SQL文を実行するためのオブジェクトの生成
(2) SQL文の実行
(3) ResultSetオブジェクトの作成
(4) 現在のResultSetをクローズさせず、次の結果に移動
(5) カーソルの位置づけ
(6) ResultSetオブジェクトからのデータ取得
(7) オブジェクトのクローズ
(8) トランザクションのコミット
以下に各項目の設定方法を示します。