FireDAC.Stan.Option.TFDUpdateOptions.UpdateChangedFields
Delphi
property UpdateChangedFields: Boolean read GetUpdateChangedFields
C++
__property bool UpdateChangedFields = {read=GetUpdateChangedFields, write=SetUpdateChangedFields, stored=IsUCFS, default=1};
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
property | published | FireDAC.Stan.Option.pas FireDAC.Stan.Option.hpp |
FireDAC.Stan.Option | TFDUpdateOptions |
説明
どのフィールドを、UPDATE または INSERT コマンドに含めるかを制御します。
UpdateChangedFields プロパティを使用すると、FireDAC が、更新を許可されたすべてのフィールドを含めるのか(False)、UPDATE SET (<field list>) や INSERT INTO (<field list>) コマンドで変更されたフィールドのみを含めるのか(True)を、指定することができます。デフォルト値は True です。
フィールドは、ReadOnly = False で、 pfInUpdate
が ProviderFlags にある場合に、更新が許可されます。自動インクリメンタル フィールドについては、その他にも利用可能なオプションがあります。
UpdateChangedFields に True を設定すると、次のことが保証されます:
- NULL ではないフィールドのみが、INSERT コマンドに含まれます。
- ユーザー/アプリケーションによって変更されたフィールドのみが、UPDATE コマンドに含まれます。
これにより、データベース リカバリ/トランザクション時の、ロールバック情報の生成を、最小限にすることができます。また、変更されたフィールドに対して、テーブル トリガのみを発生させます。
UpdateChangedFields を False に設定すると、複数レコードに対して更新の送信する場合、各レコードに対して更新送信コマンドを繰り返し生成しなくてもいいよう、最適化することができます。FastUpdates を True に設定する場合は、検討してください。