FireDAC.Comp.Client.TFDCustomSchemaAdapter.ApplyUpdates
Delphi
function ApplyUpdates(AMaxErrors: Integer = -1): Integer;
C++
int __fastcall ApplyUpdates(int AMaxErrors = 0xffffffff);
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
function | public | FireDAC.Comp.Client.pas FireDAC.Comp.Client.hpp |
FireDAC.Comp.Client | TFDCustomSchemaAdapter |
説明
集中管理されている変更ジャーナル内のすべてのレコードでの変更を、データベースに適用します。
ApplyUpdates を使用すると、集中管理されている変更ジャーナル内のすべてのレコードでの変更を、データベースに適用できます。 遭遇したエラーの数を返します。集中管理されている変更ジャーナルは、変更を次のように収集します:
- SchemaAdapter プロパティ セットを持つ FireDAC データセットから、この TFDCustomSchemaAdapter インスタンスへ。
- SchemaAdapter プロパティ セットを持つテーブル アダプタから、この TFDCustomSchemaAdapter インスタンスへ。
ApplyUpdates 呼び出しは、次の手順を実行します:
- BeforeApplyUpdate イベントを起動。
- データ アダプタを呼び出して、各行に対して SQL 更新コマンドを生成または使用し、変更をデータベースに送信。
- AfterApplyUpdate イベントを起動。
Reconcile メソッドを呼び出すと、手順 2 においてエラーのあったレコードを、調整することができます。
メモ: CommitUpdates メソッドはなく、これは、各関連データセットに対して、コード内で呼び出されなければなりません。
AMaxErrors
は、FireDAC により更新操作が中断されるまでに許容されるエラーの最大数を指定します。 AMaxErrors
を –1 に設定すると、エラー数に制限はないことを示し、0 に設定するとエラーは 1 つの許容されないことを示します。
ApplyUpdates は、遭遇したエラーの数を返します。 この戻り値と AMaxErrors
の設定に基づいて、正常に適用された更新が集中管理された変更ログから削除されます。 更新がすべて適用される前に更新処理が中止された場合、適用されていない更新は変更ログにそのまま残ります。
ApplyUpdates は、例外を発生させません。代わりに、アプリケーションが Reconcile と OnReconcileRow イベント ハンドラ、または、各データセットに対して FilterChanges と RowError プロパティを使用して、エラーのあるレコードをレビューしなければなりません。詳細については、「更新のキャッシュ」の「エラーのレビュー」を参照してください。
関連項目
- FireDAC.Comp.Client.TFDRdbmsDataSet.SchemaAdapter
- FireDAC.Comp.Client.TFDCustomSchemaAdapter.Reconcile
- 更新のキャッシュ