(PWS4 IIS4 IIS5)
Index — Recordset オブジェクトに対して現在有効なインデックス名を示します。
構文
object.Index
パラメータ
- object
- Recordset オブジェクを指定します。
設定値と戻り値
文字列型 (String) の値を、インデックス名として設定します。また、値の取得も可能です。
説明
Index プロパティで指定したインデックスは、Recordset オブジェクトの基になるベーステーブルで、事前に宣言しておきます。つまり、インデックスは ADOX Index オブジェクトとしてプログラム的に宣言しておくか、ベーステーブルの作成時に宣言しておきます。
インデックスを設定できないと、実行時エラーが発生します。次の条件では、Index プロパティは設定できません。
* WillChangeRecordset イベント ハンドラまたは RecordsetChangeComplete イベント ハンドラ内
* Recordset の操作が実行中 (State プロパティで判別可能)
* Filter プロパティにより Recordset にフィルタが設定されている
Recordset が閉じていれば、Index プロパティは正常に設定できますが、基になるプロバイダがインデックスをサポートしていない場合は、Recordset が正常に開かなかったり、インデックスを使えないことがあります。
インデックスを設定すると、現在の行の位置が変更されることがあります。その場合は、AbsolutePosition プロパティが更新され、WillChangeRecordset イベント、RecordsetChangeComplete イベント、WillMove イベント、および MoveComplete イベントが生成されます。
インデックスの設定が可能で、LockType プロパティが adLockPessimistic または adLockOptimistic の場合は、UpdateBatch 操作が暗黙的に実行されます。これによって、カレントと、影響下のグループが解放されます。既存のフィルタがすべて解放され、現在の行の位置は、並べ替えられた Recordset の最初の行に移動します。
Index プロパティは、Seek メソッドと連動して使用されます。基になるプロバイダが Index プロパティをサポートしていないために、Seek メソッドがサポートされていない場合は、代わりに Find メソッドを使用してください。Recordset オブジェクトがインデックスをサポートしているかどうかを調べるには、Supports(adIndex) メソッドを使用します。
共にインデックスを扱いますが、組み込み Index プロパティは、ダイナミック プロパティおよび Optimize プロパティとは無関係です。