バッチ更新の使用
更新情報をキャッシュするアプローチとして、データセット プロバイダを使って ADO データセットをクライアント データセットに接続する方法があります。この方法については、「クライアント データセットを使用した更新情報のキャッシュ」を参照してください。
ただし、ADO データセット コンポーネントでは、キャッシュされた更新を独自にサポートしており、その中でバッチ更新を呼び出します。クライアント データセットを使って更新をキャッシュする場合とバッチ更新機能を使用する場合の対応を次の表に示します。
ADO とクライアント データセットによるキャッシュされた更新の比較 :
ADO データセット | TClientDataSet | 説明 |
---|---|---|
LockType |
使用せず: クライアント データセットでは常に更新情報をキャッシュします |
データセットをバッチ更新モードで開くかどうかを指定します。 |
CursorType |
使用せず: クライアント データセットでは常にデータのメモリ内スナップショットを扱います |
ADO データセットをサーバー上の変更内容からどう分離するかを指定します。 |
RecordStatus |
UpdateStatus |
現在の行で(更新が発生した場合)どのような更新が発生したかを示します。RecordStatus の方が UpdateStatus より多くの情報を提供します。 |
FilterGroup |
StatusFilter |
入手可能なレコードの種類を指定します。FilterGroup の方がより多くの種類の情報を提供します。 |
UpdateBatch |
ApplyUpdates |
キャッシュされている更新情報をデータベース サーバーに適用します。ApplyUpdates とは異なり、UpdateBatch では適用する更新の種類を限定できます。 |
CancelBatch |
CancelUpdates |
保留状態の更新情報を破棄し、元の値に戻します。CancelUpdates とは異なり、CancelBatch ではキャンセルする更新の種類を限定できます。 |
ADO データセット コンポーネントのバッチ更新機能を使用するときは、次のことを行います。