/ / SSIS 2008スクリプトコンポーネント更新レコード - c#、sql-server、ssis、ssis-2008、スクリプトコンポーネント

SSIS 2008スクリプトコンポーネントの更新レコード - c#、sql-server、ssis、ssis-2008、script-component

あるデータベースから別のデータベースにデータを移動しようとしているのですが、スクリプトコンポーネント内でデータをある程度マッサージする必要があります。

重要なのは、コンポーネント内のすべてのフィールドを宣言できますが、それを行うことはSSISの性質にかなり反するように思われるということです。

だから私は約20のフィールドを持つテーブルがあります。 フィールドの1つは、C#のビジネスレイヤを使用して作成されたファイルディレクトリパスです。私はそれを書きませんでした、そして私がより多くのデータベースであるのでそれは実際には開発ゲームの私の側ではありません。

データを別のデータベースに移動しているので、ファイルパスはレコードごとに変わります。

特異値という点まで持っていってスクリプトコンポーネントに入っても、実際にはレコードの有効なファイルパスが生成されますが、その他の情報はすべてスクリプトコンポーネントを通過しません。

これで、スクリプトコンポーネントでレコードの残りの列を宣言できましたが、プログラムの性質に反するように思われます。結局データフロー。

だから私が探しているステップの順序は.. 1.一連のデータを取り込む 2.ビジネスコンポーネントを使用できるように、スクリプトコンポーネントを使用してその1つの列値のみをマッサージします。 3.行内のその1列のみを更新する 4.ターゲットデータベースに挿入します。

これのほとんどは簡単ですが、スクリプトコンポーネントがデータの流れを制限しています。

これを回避する方法はありますか。それとも、それを吸い上げてテーブル全体をスクリプトコンポーネントに流す必要がありますか。

ありがとう

回答:

回答№1は1

それがはっきりしないなら申し訳ありません。私は解決策を見つけました。

データを通じてすべてのデータを取得するための鍵スクリプトコンポーネントは、出力列を宣言しません。宣言した場合は、それらすべてを宣言する必要があります。 そうしないと、コンポーネントは暗黙のうちにそれを通してすべてのデータを移動します。

混乱させて申し訳ありませんが、そのコンポーネントをうまく動かそうとすることはあまり明確ではありませんでした。