2008年9月28日日曜日

javaのResultSetからデータを取得する際の注意点

ResultSetからデータを取得する際の注意点を1つ挙げる。それは、

★ResultSetオブジェクトの指すカーソルは、一番最初は、sql文を実行して取得したデータセットの一行目の一つ前に置かれることになっているので、 nextメソッドの最初の呼び出しで、カーソルは一行目に置かれ、一行目がカレント行になる。

つまり、取得データの一行目を扱いたかったら、必ず初めにnext()メソッドを実行して次の行があるかどうかを判定し、それから一行目のデータを扱う必要がある。

コードで書けば以下のような感じ。

ResultSet rs = stmt.executeQuery("SELECT id FROM usertable");
if(rs.next){
  String id = rs.getString("id");
}

0 件のコメント: