データベーステーブルからデータを読み込んで多数の演算と計算を行い、最後にレコードをデスティネーションテーブルに書き込む古いDelphi 7アプリケーションがあります。TClientDatasetデータベーステーブルの制約のためにApplyUpdatesエラーが発生しました
この古いアプリケーションでは、パフォーマンスの理由から、の500レコードごとにApplyUpdatesが呼び出されます。
問題は、時には、データベースの制約を引き起こすレコードの束があることです。 Delphiは例外をApplyUpdatesで発生させます。
私の問題は私には分かりませんこのレコードの責任はです。候補者は500人です!
問題のレコードであるTClientDatasetに問い合わせることはできますか?
私はスピードの問題のために追加されたレコードをforeupに更新したくありません。
最高の方法は、500レコードの例外を除いてのみforeachを更新することです。 – philnext
@philnextあなたが何を意味するのか分かりません。 – Jako
500件のレコードにApplyUpdatesがあります。次の500件の場合はそれを行います。例外が発生するまで500件のレコードごとにApplyUpdatesを適用して処理してください... – philnext