次のシナリオにアプローチする最善の方法を見つけようとしています。
概要
支払いは 1 日を通して収集され、テーブル (SQL Server) に格納されます。毎日の終わりに、これらの支払いはエクスポートされ、別のデータベース (Oracle) に挿入されます。Oracle データベースに正常に挿入された支払いは、タイムスタンプで更新されます。
プロセス
ステップ 1 - 各支払いレコードを Oracle データベースと照合して、支払いレコードによって参照される値が Oracle データベースに存在することを確認する必要があります。このステップを満たす支払いは、パイプラインを下に移動します。
ステップ 2 - 支払いが Oracle データベースに挿入され、挿入エラーがあればレコードセットにリダイレクトされます。
アプローチ
支払い (SQL Server) とルックアップ値 (Oracle) に OLEDB データ ソースを使用し、Merge Join (Left Outer) を使用してデータを支払いに追加しています。Merge Join の結果から条件分岐を使用して、ルックアップ データと一致した支払いを OLEDB Destination に渡します。
元の支払いテーブルを、挿入された支払いのみで更新する必要があります。条件付き分割を使用すると、ステップ 1 で一致しなかった行を特定でき、最後の挿入でエラー出力の行をリダイレクトすることで、そこで失敗した行を特定できます。ただし、正常に挿入された支払いを特定する最善の方法と、元のテーブルを更新する最善の方法がわかりません。