0

現在、受信する新しいインポート ファイル用の 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 宛先に直接使用されました。

4

1 に答える 1

0

私がしたことは、それぞれがキーでソートされた後、2 つのファイルを結合してマージすることでした。

Flat Source DataConversion Sort Merge Join (左のテーブルは、一致させたいメイン ID を持つテーブルです)

これは、単独のフラット ソース ファイルからのマージ結合に入ります。Flat Source DataConversion Sort ToAboveMerge Join

マージ結合は、すべてのファイルが使用されている同じ sortID でソートされ、ole db 宛先に直接使用されました。

于 2013-10-02T16:50:29.373 に答える