|
VAccess
現在の Pervasive PSQL データ ファイルからインデックスを削除します。また、RefreshLocations が True の場合は、現在のテーブルのデータ辞書定義からもインデックスを削除します。
メモ
DdfDropIndex は、データ ファイル自体のインデックス構造を変更するので、正しく使用しないと非常に危険です。データ ファイルを使用する既存プログラムは、この操作を実行した後は動作しなくなる可能性があります。注意して使用してください。
DdfDropIndex メソッドの構文は次のような要素で構成されます。
DdfDropIndex は、VAccess コントロールのステータスを保持する 2 バイトの整数を返します。この値がゼロの場合、オペレーションは正常に終了しています。
DdfDropIndex は実際のデータ ファイル自体から指定されたインデックスを削除します。また、この関数は VAccess コントロールのメタデータ メモリ イメージからインデックスを削除します。RefreshLocations が True の場合、DdfDropIndex は現在のメモリ イメージと一致するように DDF ファイルを更新します。DdfTransactionMode が True の場合、これらの操作はトランザクション内部で実行されます。
ファイルの最後のインデックス以外のインデックスを削除すると、すべてのインデックスの番号が付け替えられます。たとえば、5 つのインデックスがあるテーブル内で 3 番目のキーが削除されると、キー #3 がキー #2 に、キー #4 がキー #3 になります。DdfDropIndexMaintain を使用すると、テーブルのその他のキーを混乱させることなく、インデックスを削除することができます。
'現在インデックスを使用しているアプリケーションをすべて終了する For i = 0 To VAEngine.TotalKeys – 1 'TotalKeys の値はループを通るたびに 1 減算されるため、 '常にキー番号 0 が削除される status = VANew.DdfDropIndex(0) If status > 0 Then errorMsg = "Error occurred during Drop " _ + "Index " + CStr(i) + _ " operation.Btrieve status " + _ CStr(status) + ". " MsgBox errorMsg, vbExclamation End If Next i
IndexList、RefreshLocations、DdfAddIndex、DdfDropIndexMaintain
|