Resync メソッド (ADO)

適用先: Access 2013、Office 2013

現在の Recordset オブジェクト、または Record オブジェクトの Fields コレクションのデータを、基になるデータベースのデータで更新します。

構文

RecordsetAffectRecordsResyncValues の再同期

レコードフィールドResync ResyncValues を再同期する

パラメーター

パラメーター 説明
AffectRecords 省略可能です。 Resync メソッドで操作するレコードの数を決定する AffectEnum 値を指定します。 既定値は adAffectAll です。 この値は、 Record オブジェクトの Fields コレクションに対する Resync メソッドでは使用できません。
ResyncValues 省略可能です。 基になる値を上書きするかどうかを指定する ResyncEnum 値を指定します。 既定値は adResyncAllValues です。

注釈

Recordset

Resync メソッドは、現在の Recordset のレコードを基になるデータベースと再同期させる場合に使用します。 このメソッドは、静的または前方専用のカーソルを使用していて、基になるデータベースの変更を確認する場合に役立ちます。

CursorLocation プロパティを adUseClient に設定した場合には、 Resync は、読み取り専用ではない Recordset オブジェクトに対してのみ使用できます。

Requery メソッドとは異なり、 Resync メソッドは、 Recordset オブジェクトの基になっているコマンドを再実行しません。 基になるデータベースの新しいレコードを参照することはできません。

基になるデータとの競合 (たとえば、他のユーザーがレコードを削除した場合) が原因で再同期に失敗した場合、プロバイダーは Errors コレクションに警告を返し、実行時エラーが発生します。 競合しているレコードを特定するには、Filter プロパティ (adFilterConflictingRecords) と Status プロパティを使用します。

ダイナミック プロパティ Unique Table および Resync Command が設定されていて、Recordset が複数のテーブルに対する JOIN 操作の実行結果である場合、Resync メソッドは、Unique Table プロパティで指定されているテーブルに対してのみ、Resync Command プロパティで指定されているコマンドを実行します。

フィールド

Resync メソッドは、 Record オブジェクトの Fields コレクションの値を、基になるデータ ソースと再同期させる場合に使用します。 Count プロパティは、このメソッドによる影響を受けません。

ResyncValuesadResyncAllValues (既定値) に設定すると、コレクションに含まれる Field オブジェクトのプロパティ UnderlyingValueValue、および OriginalValue が同期化されます。 ResyncValuesadResyncUnderlyingValues に設定すると、UnderlyingValue プロパティだけが同期化されます。

呼び出し時の各 Field オブジェクトの Status プロパティの値も、 Resync の動作に影響を与えます。 Status の値が adFieldPendingUnknown または adFieldPendingInsert である Field オブジェクトに対しては、 Resync は何も行いません。 Status の値が adFieldPendingChange または adFieldPendingDelete である場合は、 Resync はデータ ソースにまだ存在しているフィールドのデータ値を同期化します。

Resync will not modify Status values of Field objects unless an error occurs when Resync is called. For example, if the field no longer exists, the provider will return an appropriate Status value for the Field object, such as adFieldDoesNotExist. Returned Status values may be logically combined within the value of the Status property.