2016-04-11 27 views
0

我是SSIS的新手,我希望有人能指出我正確的方向!SSIS我需要在其他表中使用主鍵值

我需要將數據從一個數據庫移動到另一個數據庫。我寫了一個查詢,從多個表中獲取數據(SOURCE)。然後,我使用條件拆分(Condition:Id = id)到目標數據庫中的許多表。這是我的問題,我需要另一個表填充,它從三個表中獲取'id'值,並在第四個表中將它們用作屬性以及來自SOURCE的附加數據。 我想我需要傳遞參數的id值,但似乎沒有辦法做到這一點時插入到ADO NET目的地。

MY SSIS Diagram

四表將已插入從表1,表2和表3 ID值(自動遞增)。

我是否正確地處理這個問題還是有更好的方法嗎?

在此先感謝!

+0

來源去1,2,3。你需要知道剛剛被添加到1,2,3的記錄在某個審計表中,4嗎? – billinkc

回答

0

我知道沒有辦法獲取插入Dataflow目標中的行的IDENTITY值以用於同一Dataflow。

或許你想做的事情的方法是在數據流中創建第四個分支,將第四個表中的列插入到第四個表中,並將外鍵(其他3個表中的id)留空。

然後在數據流之後,使用ExecuteSQL任務調用一個存儲過程,該存儲過程通過查找其他三個表中的ID來填充第四個表中的缺失列。

如果你的第四個表沒有你需要查找其他三個表中的id的值,那麼你可以讓數據流進入一個具有這些值的登臺表,然後填入第四個表同時從相應的值查找ID。

+0

謝謝你的榜樣!我開始懷疑這是否會更好地實現爲SQL代理作業。我會給你的解決方案去看看我如何繼續。再次感謝! – Alan

相關問題