OLE DB Provider Guide (v11)

レコードの検索 (OLE DB プロバイダー)

レコードの検索に使用するメソッドは、レコードセットの設定によって異なります。動的なレコードセットの場合、Pervasive では Index プロパティと Seek メソッドをサポートします。

Sort メソッドと Find メソッド(静的なクライアント側のカーソルでのみ動作)は Pervasive OLE DB プロバイダーで提供されていますが、現在はサポートされておらず、Pervasive ではこれらを使用していません。すべての検索およびソートにおいて、Index メソッドと Seek メソッドの方が信頼性が高く、Pervasive エンジンを直接使用します。これにより、クライアント側のレイヤーの使用に際してパフォーマンスが向上します。


メモ

Seek メソッドを使用するには、レコードセットを開くときに dCmdTableDirect を指定する必要があります。


Seek メソッドでは、検索する値を含むバリアント配列が必要です。1 つまたは複数の列で構成されるインデックスおよびその値を含む配列を、それぞれ対応する列で比較します。このため、セグメント インデックスがある場合、現在のインデックスに含まれるセグメント数と等しい要素数でバリアント配列を宣言する必要があります。

rs.Open "Person", "Provider=PervasiveOLEDB;Data Source=Demodata", adOpenDynamic, 
adLockBatchOptimistic, adCmdTableDirect 
Dim VariantArray (1) as Variant 
VariantArray(0) = "CA" 
VariantArray(1) = "Sacramento" 
rs.Index = "State_City" 
rs.Seek VariantArray adSeekFirstEQ 
rs.Close 

データ間の移動およびデータ操作 (OLE DB プロバイダー)

バッチ更新または即時更新の選択 (OLE DB プロバイダー)