最後到達我的項目的數據遷移部分,現在嘗試將數據從MySQL遷移到SQL Server。ssis數據遷移 - 使用新代理鍵的主詳細記錄
SQL Server有新的模式(映射不總是一對一)。
我試圖使用SSIS進行轉換,我今天早上開始學習。
我們在MySQL中有客戶和客戶位置表以及SQL Server中的等效表。在SQL服務器中,我所有的表現在都有代理鍵列(GUID),而且我在腳本組件中創建了相同的列。
另請注意,我在當前的mysql表中有一個主鍵。
我在找什麼是我可以添加子記錄到客戶位置表與新創建的GUID作爲父鍵。
我看到SSIS有Foreach循環容器,這裏有什麼用處。
如果不是我能想到的另一種可能性是在主數據發送到主數據流任務上的目標組件[表]之前創建兩個數據流任務並[以某種方式],則添加一個帶有新創建的GUID的變量,而另一個與舊的PrimaryID,它將用於爲子記錄創建DataTask Flow的源代碼。
可能是簡單的,這也可以在master的datatask完成後完成,然後child的datatask讀取此主數據並將子記錄從MySQL插入到SQL Server表中。這雖然意味着我必須將所有父表的記錄載入內存。
我知道這是太混亂,這主要是因爲我很困惑:-(,忍耐一下,如果你想了解更多的信息讓我知道。
我一直到五月鏈接,我通過谷歌搜索發現,但沒有人真正解釋(或者我是不是能夠uderstand)的過程是如何進行的。
請告知
問候,
月
**編輯** 1
後繼續搜索和提煉關鍵詞,我發現這個鏈接SO和經歷它,看它是否能在我的情況
How to load parent child data found in EDI 823 lockbox file using SSIS?
@ HLGEM-謝謝您的建議。我會努力的。 GUID的原因來自Domain Concerns,是的,我們知道性能問題。將使用我的結果更新你 – TheMar
@ HLGEM-我使用你的建議的一半。我決定在目標表中添加額外的列,然後再放下它們。我遇到查詢組件沒有得到任何匹配的記錄,一旦我有控制流工作,我會來更新這個答案。 – TheMar
@ HLGEM-我發佈了關於查找的另一個問題。 SSIS:查找組件:行在查找過程中沒有找到匹配(http://stackoverflow.com/questions/7209231/ssis-lookup-component-row-yielded-no-match-during-lookup)。如果你能指出我在正確的方向。我想在這裏問一下,但後來我認爲不要混淆這個空間 – TheMar