1

Oracle のテーブルから SQL Server 2008 R2 にレコードを移行する必要があります。データを移動し、移行された ID のコピーをステージ テーブルに保存できるようにするソリューションを既に設計しました。
ルックアップ コンポーネントとステージ テーブルのおかげで、重複を避けることができます。これは、移行がいくつかの異なる時点で行われ、移行されるオブジェクトが特定の順序に従っていないためです。

私のSSISスキーマの下:

ここに画像の説明を入力

式と 2 つの変数を使用して、スロットで Oracle からデータを収集します。

SELECT * 
FROM ORDERS   
WHERE OrderID > [@User::Start] AND OrderID <= [@User::End]   
AND STATUS <> 'Open'

ステータスが「オープン」でない注文がすべて移行されたら、残りのデルタを移行します。これを行うには、ステージですでに移行済みのデータを参照する必要があります。SO データ ソースのクエリは次のようになります。

SELECT * 
FROM ORDERS   
WHERE OrderID NOT IN ([@User::AlreadyMigratedIDs])

テーブル Stage に存在するすべての ID を変数「AlreadyMigratedIDs」に格納する必要があります。

Oracle からソース データを収集するために ADO.net コンポーネントで使用されるクエリの条件として、(SQL Server 上の) ステージ テーブルの情報をどのように使用できますか? ADO.net オブジェクトの前に、ルックアップなどの他の SSIS を使用できますか?

4

1 に答える 1