次の方法で共有


AbsolutePosition プロパティ (ADO)

Recordset オブジェクトの現在のレコードの序数位置を示します。

設定と戻り値

32 ビット コードの場合は、長い 値を 1 から Recordset オブジェクト (RecordCount) のレコード数に設定または取得するか、PositionEnum 値のいずれかを返します。

64 ビット コードの場合は、64 ビット値のストレージを提供するデータ型を使用します。 たとえば、Long または DBORDINAL などの 64 ビット長の別の値を使用できます。 PositionEnum 値は 32 ビット長に制限されているため使用しないでください。

備考

AbsolutePosition プロパティを設定するには、使用している OLE DB プロバイダーに IRowsetLocate:IRowset インターフェイスを実装する必要があります。

前方専用カーソルまたは動的カーソルで開かれた RecordsetAbsolutePosition プロパティにアクセスすると、adErrFeatureNotAvailable エラーが発生。 他の種類のカーソルでは、OLE DB プロバイダーが IRowsetScroll:IRowsetLocate インターフェイスをサポートしている限り、正しい位置が返されます。 プロバイダーが IRowsetScroll インターフェイスをサポートしていない場合、このプロパティは adPosUnknown に設定されます。 プロバイダーのドキュメントを参照して、IRowsetScroll サポートしているかどうかを確認してください。

Recordset オブジェクト内の序数位置に基づいてレコードに移動したり、現在のレコードの序数位置を決定したりするには、AbsolutePosition プロパティを使用します。 プロバイダーは、このプロパティを使用できるようにするための適切な機能をサポートする必要があります。

AbsolutePage プロパティと同様に、現在のレコードが Recordsetの最初のレコードである場合、AbsolutePosition は 1 から始まります。 RecordCount プロパティから、Recordset オブジェクト内のレコードの合計数を取得できます。

AbsolutePosition プロパティを設定すると、現在のキャッシュ内のレコードであっても、ADO は指定したレコードから始まる新しいレコード グループでキャッシュを再読み込みします。 CacheSize プロパティによって、このグループのサイズが決まります。

手記

AbsolutePosition プロパティをサロゲート レコード番号として使用しないでください。 前のレコードを削除すると、特定のレコードの位置が変わります。 また、Recordset オブジェクトが再クエリまたは再度開かれた場合、特定のレコードが同じ AbsolutePosition を持つことも保証されません。 ブックマークは、引き続き特定の位置を保持して戻す推奨される方法であり、Recordset オブジェクトのすべての種類にわたって配置する唯一の方法

適用対象

Recordset オブジェクト (ADO)

関連項目

AbsolutePosition プロパティと CursorLocation プロパティの使用例 (VB)
AbsolutePosition プロパティと CursorLocation プロパティの使用例 (VC++)
AbsolutePage プロパティ (ADO)
RecordCount プロパティ (ADO)