CacheSize

(PWS4 IIS4 IIS5)
CacheSize — ローカル メモリにキャッシュされた Recordset オブジェクトのレコード数を示します。

構文

object.CacheSize

パラメータ

object Recordset オブジェクトを指定します。

設定値と戻り値

0 より大きい長整数型 (Long) の値を設定します。また、値の取得も可能です。既定値は 1 です。

説明

CacheSize プロパティを使用して、プロバイダからローカル メモリに一度に取り込むレコード数を制御します。たとえば、CacheSize が 10 の場合、最初に Recordset オブジェクトが開くと、プロバイダは最初の 10 個のレコードをローカルメモリに取り込みます。Recordset オブジェクトを移動する間、プロバイダはローカル メモリバッファからデータを返します。キャッシュ内の最後のレコードを通過すると、プロバイダは次の 10 個のレコードをデータソースからキャッシュに取り込みます。

注意 CacheSize は、プロバイダ固有の Maximum Open Rows プロパティ (Recordset オブジェクトの Properties コレクション内) に基づいた値です。Maximum Open Rows より大きな CacheSize を設定することはできません。プロバイダが開くことのできる行数を修正するには、Maximum Open Rows を設定します。

CacheSize の値は、Recordset オブジェクトが開いている間に変更できますが、変更した値は、次にデータ ソースからキャッシュへ取り込むレコード数に対してのみ適用されます。プロパティ値を変更しただけでは、現在のキャッシュの内容は変更されません。

取り込めるレコード数が CacheSize の指定値より少なくても、プロバイダは残りのレコードを返し、エラーにはなりません。

CacheSize プロパティは 0 には設定できません。エラーになります。

ほかのユーザーがソース データを同時に変更しても、キャッシュから取り込まれたレコードには反映されません。キャッシュに格納されているすべてのデータを強制的に更新するには、Resync メソッドを使用します。

CacheSize に 1 を超える値を設定して、レコードを取得した後に削除を行った場合、移動メソッド (Move、MoveFirst、MoveLast、MoveNext、MovePrevious) を実行すると、削除レコードに移動します。最初のフェッチ後の削除は、削除された行からデータ値にアクセスするまで、データキャッシュには反映されません。ただし、CacheSize に 1 を設定すると、削除行をフェッチできなくなるのでこの問題は解消できます。


Bookmark

(PWS4 IIS4 IIS5)
Bookmark — Recordset オブジェクトのカレント レコードを一意に識別するブックマークを示します。または、Recordset オブジェクトのカレント レコードを、有効なブックマークで識別されるレコードに設定します。

構文

object.Bookmark

パラメータ

object Recordset オブジェクを指定します。

設定値と戻り値

有効なブックマークとして評価されるバリアント型 (Variant) の式を設定します。また、値の取得も可能です。

説明

Bookmark プロパティを使ってカレント レコードの位置を保存し、そのレコードにいつでも戻ることができます。ブックマークは、ブックマーク機能をサポートする Recordset オブジェクトでのみ利用できます。

Recordset オブジェクトを開くとき、各レコードには固有のブックマークが割り当てられます。カレント レコードのブックマークを保存するには、Bookmark プロパティの値を変数に代入します。ほかのレコードに移動した後、ブックマークを保存したレコードにすぐに戻るには、Recordset オブジェクトの Bookmark プロパティをその変数に設定します。

ブックマーク値を参照できない場合があります。たとえば、同じレコードを参照するブックマークであっても、異なる値を持つ場合があるため、ブックマークの値を直接比較出来るとは限りません。

Clone メソッドを使って Recordset オブジェクトのコピーを作成した場合、元と複製の Recordset オブジェクトの Bookmark プロパティの設定値は同じになるため、同じように使用できます。ただし、同じソースまたはコマンドから作成されていても、異なる Recordset オブジェクトからのブックマークに互換性はありません。

RDS での使用 クライアント側 Recordset オブジェクトでは、Bookmark プロパティは常に利用できます。


BOF

(PWS4 IIS4 IIS5)
BOF — カレント レコードの位置が Recordset オブジェクトの最初のレコードより前にあることを示します。

構文

object.BOF

パラメータ

object Recordset オブジェクトを指定します。

戻り値

BOF プロパティは、ブール型 (Boolean) の値を返します。

説明

BOF プロパティと EOF プロパティは、Recordset オブジェクトにレコードが格納されているか、またはレコード間を移動したときに Recordset オブジェクトの制限を超えたかどうかを確認するときに使います。

BOF プロパティは、カレント レコードの位置が最初のレコードより前にある場合は True (-1) を返し、カレント レコードの位置が最初のレコード上またはそれ以降にある場合は False (0) を返します。

BOF プロパティが True の場合、カレント レコードはありません。

レコードを持たない Recordset を開くと、BOF プロパティは True に設定されます (Recordset のこの状態については、RecordCount プロパティを参照してください)。少なくとも 1 つのレコードが格納された Recordset オブジェクトを開くと、最初のレコードがカレント レコードになり、BOF プロパティと EOF プロパティは False になります。

Recordset オブジェクトで最後に残ったレコードを削除しても、カレント レコードの位置を移動するまで BOF プロパティは False のままです。

次の表では、BOF プロパティの設定値の組み合わせと、利用できる Move メソッドの種類を示します。

  MoveFirst、MoveLast MovePrevious、Move < 0 Move 0 MoveNext、Move > 0
BOF=True、EOF=False 使用可能 エラー エラー 使用可能
BOF=False、EOF=Truee 使用可能 使用可能 エラー エラー
両方が True エラー エラー エラー エラー
両方が False 使用可能 使用可能 使用可能 使用可能

Move メソッドが使えても、そのメソッドによるレコードの位置が見つかったとは限りません。メソッドが使えるとは、指定された Move メソッドを呼び出してもエラーが発生しなかったことを意味するだけです。

次の表は、さまざまな Move メソッドを呼び出してもレコードの位置が見つからない場合に、BOF プロパティに設定される値を示します。

BOF EOF
MoveFirst、MoveLast True に設定 True に設定
Move 0 変化なし 変化なし
MovePrevious、Move < 0 True に設定 変化なし
MoveNext、Move > 0r 変化なし True に設定

ActiveCommand

(PWS4 IIS4 IIS5)
ActiveCommand — 関連付けられた Recordset オブジェクトを作成した Command オブジェクトを示します。

構文

object.ActiveCommand

パラメータ

object Recordset オブジェクトを指定します。

戻り値

Command オブジェクトを含むバリアント型 (Variant) の値を返します。既定は Null オブジェクトへの参照です。

説明

ActiveCommand プロパティは読み取り専用です。

Command オブジェクトを使わずにカレント Recordset を作成する場合、Null オブジェクトへの参照が返されます。

Recordset オブジェクトの結果しか得られない場合、このプロパティを使い、関連付けられた Command オブジェクトを検索します。


AbsolutePosition

(PWS4 IIS4 IIS5)
AbsolutePosition — Recordset オブジェクト内のカレント レコードの位置を示します。

構文

object.AbsolutePosition

パラメータ

object Recordset オブジェクトを指定します。

設定値と戻り値

1 から Recordset オブジェクトのレコード数 (RecordCount) までの長整数型 (Long) の値を設定します。また、値の取得も可能です。あるいは、PositionEnum の値の 1 つを返します。

説明

AbsolutePosition プロパティを使うと、Recordset オブジェクト内の位置に基づいて特定のレコードに移動したり、カレントレコードの位置を決定することができます。プロバイダが必要な機能をサポートしていないと、このプロパティは利用できません。

AbsolutePage プロパティと同様に、AbsolutePosition の値は 1 から始まります。また、カレント レコードが Recordset の最初のレコードの場合、値は 1 になります。Recordset のレコードの総数を調べるには、RecordCount プロパティを確認します。

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

注意 AbsolutePosition プロパティで、レコード番号の代用はできません。レコードの位置は、上位のレコードを削除すると変更されます。また、Recordset オブジェクトを再びクエリしたり開いたときに、レコードが AbsolutePosition の値と同じになるとは限りません。所定の位置を保持し、そして戻るにはブックマークを使います。ブックマークは、すべての型の Recordset オブジェクト間で位置を決定できる唯一の方法です。


AbsolutePage

(PWS4 IIS4 IIS5)
AbsolutePage — カレント レコードがあるページを示します。

構文

object.AbsolutePage

パラメータ

object Recordset オブジェクトを指定します。

設定値と戻り値

1 から Recordset オブジェクトのページ数 (PageCount) までの値を長整数型 (Long) に設定します。また、値の取得も可能です。あるいは、PositionEnum の値の 1 つを返します。

説明

カレント レコードのページ番号を確認するには、AbsolutePage プロパティを使います。Recordset オブジェクトを一連のページに論理的に分割するには、PageSize プロパティを使用します。各ページには PageSize の設定値に等しい数のレコードが存在します。ただし、最終ページのレコード数は PageSize の値より小さい場合があります。プロバイダが必要な機能をサポートしていないと、このプロパティは利用できません。

AbsolutePosition プロパティと同様に AbsolutePage の値は 1 から始まります。また、カレント レコードが Recordset の最初のレコードの場合、値は 1 になります。特定のページの最初のレコードに移動するには、このプロパティを設定します。総ページ数を調べるには PageCount プロパティを確認します。