JDBCのResultSetが提供するカーソル移動(ナビゲーション)メソッドの一覧
JDBC ResultSetのナビゲーション用メソッドとは
JDBCにおけるResultSetオブジェクトには、大きく分けて「順方向専用(forward only)」と「双方向(bi-directional)」の2種類があります。名前が示すとおり、順方向専用のResultSetではポインタを前方にしか移動できませんが、双方向のResultSetではポインタを前後どちらの方向にも自由に移動できます。
ResultSetインターフェースは、これら両方のタイプのResultSetオブジェクト内を移動するための複数のメソッドを提供しています。以下の表に、主なナビゲーション用メソッドとその説明をまとめました。
ResultSetのカーソル移動メソッド一覧
| メソッド | 説明 |
|---|---|
| next() | ResultSetのポインタを1行前方へ移動します。結果セットを先頭から順に読み進める際に最もよく使われる基本メソッドです。 |
| previous() | ResultSetのポインタを1行後方へ移動します。 |
| first() | ResultSetのポインタを最初の行へ移動します。 |
| last() | ResultSetのポインタを最終行へ移動します。 |
| relative(int rows) | 移動する行数を表す整数値を受け取り、その行数だけポインタを前後に移動します。正の整数を指定すると前方へ、負の整数を指定すると後方へ移動します。 |
| absolute(int row) | 行番号を表す整数値を受け取り、ResultSet内の指定位置(1から開始)へポインタを移動します。 正の整数を渡した場合は、結果セットの先頭から数えて指定位置へポインタが移動します。 負の整数を渡した場合は、結果セットの末尾から数えて指定位置へポインタが移動します。 |
| beforeFirst() | ResultSetのポインタを初期位置である「先頭行の直前」へ移動します。 |
| afterLast() | ResultSetのポインタを最終行の直後へ配置します。 |
補足:双方向ResultSetを使用するための注意点
previous()やabsolute()などの双方向移動メソッドを利用するには、Statement作成時にスクロールタイプとしてTYPE_SCROLL_INSENSITIVEまたはTYPE_SCROLL_SENSITIVEを指定する必要があります。デフォルトのTYPE_FORWARD_ONLYではnext()以外の移動メソッドは使用できないため、実装時には注意しましょう。
-
C#のコメントとは?複数行・単一行コメントの書き方を解説
コメントは、コードの内容や意図を説明するために記述する注釈です。コンパイラはコメント部分を完全に無視するため、プログラムの動作には一切影響しません。C#では、複数行にわたるコメントは「/*」で始まり、「*/」で終わります。 複数行コメント /* 以下はC#における 複数行コメントの例です */ 「/* ... */」で囲まれた範囲はすべてコンパイラによって無視されます。処理の概要や注意点など、複数行にわたる説明を残したい場合に使用します。 単一行コメント // 変数の宣言 int a = 10; 単一行コメントは「//」から行末までがコメントとして扱われます。変数の意味や処理の意図を手軽にメモ
-
Java 9インターフェースにおけるプライベートメソッドのメリットと活用方法
Java 9からは、インターフェース内にプライベートメソッドを定義できるようになりました。これは、Java 8で導入されたstaticメソッドやdefaultメソッドに続く重要な機能強化の一つであり、インターフェース内部での共通コードの再利用を実現します。従来のインターフェースでは、複数のdefaultメソッドに同じ処理を記述する必要があり、その結果としてコードの重複が発生しやすいという課題がありました。プライベートメソッドの導入により、このような重複を効果的に解消できます。インターフェースにプライベートメソッドを持つメリットコードの重複を防ぎ、保守性が向上する共通処理を一箇所にまとめることで