2010-04-04 185 views
0

我有2臺電腦,每臺電腦都安裝了SQL Server 2008,並且有一個數據庫,裏面有數據。如何在SQL Server 2008中合併兩個數據庫?

我需要一種方法,我可以在我的數據庫從這個SQL服務器從一臺PC將數據移動到另一個(另一臺電腦具有相同的DB)

  • 將數據移動到另一個 -

有一個問題,ID列,因爲我的2臺PC中的每個DB都有數據,所以此列從1,2,3開始計數.......(數據將與其他數據衝突我的數據庫)

有什麼方法可以解決我的問題併成功移動數據?

回答

1

IDENTITY類型的那些ID列?如果是這樣,當你從第二個數據庫插入新數據時,將會生成新的ID - >沒有衝突。這意味着您可能需要跟蹤插入內容,以便您可以定義插入到DB#1時DB#2中的舊ID已被轉換爲什麼內容。

如果這些列是而不是 IDENTITY列,您可以確保爲舊值添加足夠大的數字,例如,用ID + 100'000 = 100'005 - >替換每個ID(例如5) - >因此你可以避免所有的衝突。同樣,如果您有任何數據引用數據庫#2中的主表,則必須先將舊引用(舊外鍵標識)修復爲新值,然後再將它們插入到新數據庫的表中。

這有點麻煩 - 但如果仔細考慮它的話,這絕對是可以做到的。基本上,您需要對正在導入的數據重新編號,並且您需要確保不會發生任何衝突。 SQL Server中沒有任何功能可以幫助您解決這個問題 - 不幸的是,沒有「導入這些數據並重新編號其ID」類命令。

+0

謝謝,但是有什麼辦法通過MS SQL Server Management 2008來完成這個過程嗎? – Saleh 2010-04-04 17:10:58

+0

沒有太多,沒有 - 沒有任何功能或過程自動執行此操作。 – 2010-04-04 18:12:16

相關問題