現在、受信する新しいインポート ファイル用の SSIS パッケージの作成に取り組んでいます。同社は、以前とは異なり、1 つのテーブルに対して 1 つのフラット ファイルを使用していました。現在、1 つのテーブルに対して複数のファイルにデータが散らばっています。
12 のうち 2 つのデータ フロー タスクがあり、正しく動作させるためにいじっています。--1 には、1 db の宛先への 5 つのファイルがあります。 --1 には、1 db の宛先への 3 つのファイルがあります。
各ファイルには、並べ替えに使用している一貫したキー (Property_ID) があります。フラット ファイル データ フロー タスクの現在の設定は次のとおりです。
- フラットファイル ソース1
- データ変換
- Join1 をマージ (他のファイルのソート ID)
- FlatFile ソース 2
- データ変換
- Join1 をマージ
- Sort(プロパティIDでソート)
マージ Join2
フラット ファイル ソース
- データ変換
マージ Join2
マージ Join2 -> OLE DB 宛先
マージ結合のすべての結合タイプを試しましたが、データをテーブルに正しく取得する際にまだ問題があります。
各ファイルには、「Property_ID」とは別に、指定された宛先テーブルの異なる列があります
私が受け取っている現在の結果は、1 つのフラット ソース ファイルのみからのデータを含むデータ行のみであり、他のファイルからのデータではありません。
どんな援助も大歓迎です。
アップデート
私はこの問題を解決しました。
私がしたことは、それぞれがキーでソートされた後、2 つのファイルを結合してマージすることでした。
その後、マージは右側のテーブルとしてマージ結合に入れられました。左側の結合テーブルは、実際にはテーブルに入るメインの並べ替えキーを持つ他のソロ フラット ソース ファイルでした。
マージ結合は、すべてのファイルが使用されている同じ sortID でソートされ、ole db 宛先に直接使用されました。