java.sql.ResultSetは、クエリの実行結果を扱うためのインターフェースです。
java.sql.ResultSetの特徴
java.sql.ResultSetは以下の特徴があります。
- SELECTした結果を、結果セットとして取得できる
- 取得した結果セットの値はカーソルとして扱うことが可能
- 結果セットの値を使用してデータベースを更新することも可能
java.sql.ResultSetのAPI
型 | 定数 | 説明 |
---|---|---|
int | FETCH_FORWARD | 順方向に処理することを表す定数 |
int | FETCH_REVERSE | 逆方向に処理することを表す定数 |
int | FETCH_UNKNOWN | 処理順が不明であることを表す定数 |
int | CONCUR_READ_ONLY | 読み取り専用のResultSetオブジェクトであることを表す定数 |
int | CONCUR_UPDATABLE | 更新可能なResutSetオブジェクトであること表す定数 |
戻値型 | メソッド | 静的 | 説明 |
---|---|---|---|
String | getString(int i) | レコードのi番目の値をString型で取得する | |
int | getInt(int i) | レコードのi番目の値をint型で取得する | |
double | getDouble(int i) | レコードのi番目の値をdouble型で取得する | |
Date | getDate(int i) | レコードのi番目の値をjava.sql.Date型で取得する | |
boolean | getBoolean(int i) | レコードのi番目の値をboolean型で取得する | |
void | close() | ResultSetを解放する | |
int | getRow() | 現在の行番号を返す | |
void | next() | カーソルを1つ進める | |
void | previous() | カーソルを1つ戻す | |
boolean | first() | カーソルを先頭行に位置付ける | |
boolean | last() | カーソルを最終行に位置付ける | |
boolean | absolute(int i) | カーソルをi行目に位置付ける | |
boolean | isLast() | カーソルが先頭行にあるかどうかを返す | |
boolean | isFirst() | カーソルが最終行にあるかどうかを返す | |
boolean | isClosed() | カーソルがクローズされているかどうかを返す | |
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();
※例外処理は省略しています。
コメント