2013-04-24 36 views
2

我在我的數據庫A中有幾個表,它們通過外鍵互連幷包含值。這些值需要傳送到另一個數據庫B,所有的依賴關係必須保留,但主鍵和外鍵的實際(數值)值當然不重要。使用SSIS將多個連接的表從一個數據庫傳送到另一個數據庫?

使用SSIS完成此任務的最簡單方法是什麼?

這裏是我試過的辦法,但沒有取得多大成功:

  1. 我實現了與扁平的數據確實非常複雜的看法和大量冗餘的數據,並撞上了問題如何分割數據從這個扁平的視圖變成了通過外鍵連接的幾個表格。這可能是一個解決方案,但如果可能的話,我個人更喜歡避免數據擴展步驟。

  2. 我試圖使用NOCHECK選項一對一地複製表格以解除約束檢查並執行插入PK和FK字段。然而,這將我的轉移限制在一個完整的新導入中,我不能只是將一些新數據「添加」到現有的一組數據中,這樣會很好。

其他建議?

+0

你說過「我不能只是」將一些新數據添加到現有的一組數據中,這樣會很好。「如果你使用主鍵添加了「AND NOT EXISTS」子句,這應該是可能的。您是否使用自動增量(即IDENTITY)列作爲主鍵?如果是這樣,是否有另外的列組合對每一行都是唯一的?表格中是否有時間戳列表示行被插入的時間? – 2013-04-24 16:13:30

+0

@MichaelHarmon,是的,你在技術上是正確的,但插入可能會部分失敗,這是絕對不能接受的。是的,我有一個經典的PK表,在帶有自動增量和標識(唯一性)的整數列上定義。對於某些表,我可以通過將多個列合併到一起來找到另一個唯一標識符,但不是所有表(其中一些只是通過PK連接的一對多表)。我在某些表上有時間戳字段,而不是無處不在(只有當前我們使用它來進行併發)。 – 2013-04-24 16:34:38

回答

2

集成服務有一個控制流稱爲傳輸數據庫任務傳輸SQL Server對象任務獨家爲你所需要的。

這裏是你需要的教程LINK

相關問題