DB1からデータを読み取り、別のDB2に書き込む必要があります。 CTEとテンポラリテーブルで複雑なクエリを使用していますが、このクエリをSProcに入れることはできません。 私はOLE DBソースとOLE DB宛先を使用します。SSISのOLE DBソースから2番目のデータセットを取得する
OLEDBuilderでSQLコマンドとしてクエリを実行すると、CTEが一時テーブルを使用しているためメタデータを特定できないという通常の不満があります。
SProcではないため、「結果セット付き」の回避策は使用できません。だから私は、他の回避策、 "SET FMTONLY ON/OFF"を試してみてください。
今、OLE DBソースは自分のクエリを受け入れますが、2つのデータセットを出力します。最初の空と2番目のデータセットは必要なデータです。 OLE DB宛先は、最初の結果セット(空のもの)だけを読み込んでいるため、単一の行を書きません。
どうすればこの問題を解決できますか?
私は他の何かで一時テーブルを変更することはできませんし、基本的に私はクエリを変更することはできません。 SQLソリューションではなく、可能であればSSISソリューションを探しています。 Thx。
私はあなたが書いたことを理解するためにSSISで十分な専門家ではありません。あなたは、OLEDBSourceの代わりにScript Transformation(ST)を使用し、このSTにC#コードを書く必要があります。実際には、データを取得し、2つのテーブルを持つデータセットに入れてから、 2番目のテーブルを作成し、OLEDBの宛先に送信しますか? –
はい、それはまさに私が意味することです。 –