mssql 高版本數據庫導入到低版本,適用不同版本數據轉移
發佈時間:2018-11-14
適用場景:高版本數據庫數據轉移到低版本。由於sqlserver向下兼容性,但不向上兼容,所以高版本數據無法利用bak恢復,也不能附加。只能通過sql方式導入,以下介紹兩種方式。
因數據庫低版本很多停止了更新,強烈建議按照下面方式導入高版本中,導入完成,再進行備份,就可以獲得高版本數據庫bak,以後可以在高版本中直接bak恢復.
低版本恢復到高版本是兼容的,一般採用bak文件恢復,或者用mdf文件附加,點擊查看教程。如果失敗的情況下可以參考以下方法。
方法一:Navicat Premium軟件方式導入。
Navicat Premium是一款功能強大的sql連接工具,支持連接mysql、sqlserver、sqlite等眾多數據庫。本文不另外提供下載地址,需要用戶自行到互聯網下載。
1、打開軟件,點擊連接,選擇sql server 。

添加上新舊服務器的連接信息,連接名可以任意起名,點擊確認添加。

為了區分,我們分別取名“新數據庫”、“舊數據庫”。

2、數據導出。
直接雙擊“舊數據庫”就可以連接上數據庫,依次雙擊展開,一般表都是在dbo下,可以看到數據庫表。


右鍵dbo--轉儲sql文件--結構和數據 選擇目錄保存,等待執行完成,看到Finished Successfully就是表示成功完成。

3、數據導入
雙擊連接新服務器,雙擊數據庫打開,然後右鍵數據庫--運行sql文件

選擇剛才導出的sql文件,然後開始執行。

導入完成以後檢查下數據庫表和視圖是否正常。
如果有報錯,可以根據報錯查看處理,或者直接參考下面方法二嘗試。
方法二:sqlserver導入導出功能。(視圖不能很好的遷移過去,有視圖用方法一)
條件:本機安裝了sqlserver管理器,有sqlserver管理權限。
1、登錄原數據庫管理,右鍵要恢復的數據庫--任務--導出數據。

2、填寫好本地數據庫登陸信息,選擇windows身份驗證。如果是其他地方的數據庫,選擇sqlserver身份驗證,填寫好數據庫地址和賬號密碼。

3、點擊下一步,填寫目標服務器數據庫登陸信息,選擇sqlserver身份驗證。

如下圖所示,繼續下一步,直到完成。



這樣導入完成了。
可能會存在報錯,可以根據報錯查看處理。例如如果遇到下面的錯誤

解決方案:
導入導出嚮導,在“選擇源表和源視圖”頁,在導入導出的表打勾之後點擊編輯映像,選擇“啓用標識列插入"即可。
