[API] java.sql.ResultSetインターフェース

java.sql.ResultSetは、クエリの実行結果を扱うためのインターフェースです。

java.sql.ResultSetの特徴

java.sql.ResultSetは以下の特徴があります。

  • SELECTした結果を、結果セットとして取得できる
  • 取得した結果セットの値はカーソルとして扱うことが可能
  • 結果セットの値を使用してデータベースを更新することも可能

java.sql.ResultSetのAPI

【主要定数】
定数説明
intFETCH_FORWARD順方向に処理することを表す定数
intFETCH_REVERSE逆方向に処理することを表す定数
intFETCH_UNKNOWN処理順が不明であることを表す定数
intCONCUR_READ_ONLY読み取り専用のResultSetオブジェクトであることを表す定数
intCONCUR_UPDATABLE更新可能なResutSetオブジェクトであること表す定数
【主要メソッド】
戻値型メソッド静的説明
StringgetString(int i)レコードのi番目の値をString型で取得する
intgetInt(int i)レコードのi番目の値をint型で取得する
doublegetDouble(int i)レコードのi番目の値をdouble型で取得する
DategetDate(int i)レコードのi番目の値をjava.sql.Date型で取得する
booleangetBoolean(int i)レコードのi番目の値をboolean型で取得する
voidclose()ResultSetを解放する
intgetRow()現在の行番号を返す
voidnext()カーソルを1つ進める
voidprevious()カーソルを1つ戻す
booleanfirst()カーソルを先頭行に位置付ける
booleanlast()カーソルを最終行に位置付ける
booleanabsolute(int i)カーソルをi行目に位置付ける
booleanisLast()カーソルが先頭行にあるかどうかを返す
booleanisFirst()カーソルが最終行にあるかどうかを返す
booleanisClosed()カーソルがクローズされているかどうかを返す
ResultSet
MetaData
getMetaData()ResultSetMetaDataを取得する
このメタデータから検索結果に関するいろいろな情報が取得できる

java.sql.ResultSetサンプル

(ResutSetを使用した例)

import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.Statement;


//JDBCドライバをロードする
Class.forName("oracle.jdbc.driver.OracleDriver");

//DBへのコネクションを作成する
String path = "jdbc:oracle:thin:@127.0.0.1:1521:testdb";  //接続パス
String id = "user01";    //ログインID
String pw = "password";  //ログインパスワード
Connection conn = DriverManager.getConnection(path, id, pw);

//SQLクエリの実行
Statement stmt = conn.createStatement();
String sql = "SELECT * FROM user_master";
ResultSet rs = stmt.executeQuery(sql);

//結果セットの取得
while (rs.next()) {
  int id = rs.getInt("ID");
  String name = rs.getString("NAME");
  System.out.ptintln(id + ":" + name);
}

//オブジェクトのクローズ
rs.close();
stmt.close();
conn.close();

※例外処理は省略しています。

コメント

タイトルとURLをコピーしました