次の方法で共有


CancelBatch メソッド (ADO)

適用先: Access 2013、Office 2013

保留中のバッチ更新をキャンセルします。

構文

recordset。CancelBatch AffectRecords

パラメーター

パラメーター 説明
AffectRecords 省略可能です。 CancelBatch メソッドで処理するレコードの数を示す AffectEnum 値です。

注釈

CancelBatch メソッドは、バッチ更新モードの Recordset で保留中の更新をすべて取り消す場合に使用します。 即時更新モードの Recordset では、 adAffectCurrent を指定しないで CancelBatch を呼び出すと、エラーが発生します。

カレント レコードの編集中または新規レコードの追加中に CancelBatch メソッドを呼び出すと、最初に CancelUpdate メソッドが呼び出されて、キャッシュされているすべての変更が取り消されます。 その後、 Recordset で保留中のすべての変更が取り消されます。

CancelBatch 呼び出しの後、特に新しいレコードを追加する処理中の場合は、現在のレコードが不確定になる可能性があります。 このため、CancelBatch 呼び出しの後に、現在のレコード位置を Recordset 内の既知の場所に設定することが推奨されます。 たとえば、 MoveFirst メソッドを呼び出します。

基になるデータとの競合 (たとえば、他のユーザーによってレコードが削除されている場合) が原因で保留中の更新を取り消すこどができない場合、プロバイダーは Errors コレクションに警告を返しますが、プログラムの実行は停止しません。 要求したすべてのレコードで競合が発生した場合にのみ、実行時エラーが発生します。 競合しているレコードを特定するには、Filter プロパティ (adFilterAffectedRecords) と Status プロパティを使用します。