次の方法で共有


MoveFirst、MoveLast、MoveNext、および MovePrevious メソッド (ADO)

指定した Recordset オブジェクト内の最初、最後、次、または前のレコードに移動し、そのレコードを現在のレコードにします。

構文

  
recordset.{MoveFirst | MoveLast | MoveNext | MovePrevious}  

注釈

MoveFirst メソッドを使用して、現在のレコード位置を Recordset の最初のレコードに移動します

MoveLast メソッドを使用して、現在のレコード位置を Recordset 内の最後のレコードに移動しますRecordset オブジェクトは、ブックマークまたはカーソルの後方移動をサポートする必要があります。それ以外の場合、メソッド呼び出しによってエラーが生成されます。

Recordset が空の場合 (BOFEOF の両方が True の場合) に MoveFirst または MoveLast を呼び出すと、エラーが生成されます。

MoveNext メソッドを使用して、現在のレコード位置を 1 レコード先 (Recordset の下部) に移動します。 最後のレコードが現在のレコードであり、 MoveNext メソッドを呼び出す場合、ADO はレコード セット の最後のレコードの後の位置に現在のレコードを設定します (EOFTrue です)。 EOF プロパティがすでに True である状態で移動を試みると、エラーが発生します。

ADO 2.5 以降では、 Recordset がフィルター処理または並べ替えられたときに、現在のレコードのデータが変更されると、 MoveNext メソッドを呼び出すと、カーソルの 2 つのレコードが現在のレコードから前方に移動します。 これは、現在のレコードが変更されると、次のレコードが新しい現在のレコードになるためです。 変更後に MoveNext を呼び出すと、カーソルは新しい現在のレコードから 1 レコード進みます。 これは、ADO 2.1 以前の動作とは異なります。 これらの以前のバージョンでは、並べ替えまたはフィルター処理された Recordset 内の現在のレコードのデータを変更しても、現在のレコードの位置は変更されず、 MoveNext は 現在のレコードの直後の次のレコードにカーソルを移動します。

MovePrevious メソッドを使用して、現在のレコード位置を 1 レコード後方に移動します (Recordset の先頭に向かって)。 Recordset オブジェクトは、ブックマークまたはカーソルの後方移動をサポートする必要があります。それ以外の場合、メソッド呼び出しによってエラーが生成されます。 最初のレコードが現在のレコードであり、 MovePrevious メソッドを呼び出す場合、ADO は現在のレコードを Recordset の最初のレコードの前の位置に設定します (BOFTrue)。 BOF プロパティが既に True である場合に逆方向に移動しようとすると、エラーが発生します。 Recordset オブジェクトがブックマークまたは後方カーソル移動をサポートしていない場合、MovePrevious メソッドはエラーを生成します。

Recordset が前方スクロールのみであり、前方スクロールと後方スクロールの両方をサポートする場合は、CacheSize プロパティを使用して、Move メソッドを介した後方カーソル移動をサポートするレコード キャッシュを作成できます。 キャッシュされたレコードはメモリに読み込まれるため、必要以上に多くのレコードをキャッシュしないようにする必要があります。 前方専用の Recordset オブジェクトで MoveFirst メソッドを呼び出すことができます。これを行うと、プロバイダーが Recordset オブジェクトを生成したコマンドを再実行する可能性があります。

適用対象

Recordset オブジェクト (ADO)

こちらもご覧ください

MoveFirst、MoveLast、MoveNext、および MovePrevious メソッドの使用例 (VB)
MoveFirst、MoveLast、MoveNext、および MovePrevious メソッドの使用例 (VBScript)
MoveFirst、MoveLast、MoveNext、および MovePrevious メソッドの使用例 (VC++)
Move メソッド (ADO)
MoveFirst、MoveLast、MoveNext、および MovePrevious メソッド (RDS)
MoveRecord メソッド (ADO)