SQL Server 2008(R2) 資料庫移轉至SQL Server 2005

SQL Server 2008 資料庫移轉至SQL Server 2005

Microsoft SQL Server資料庫基本上不允許降級轉入,不管是用匯入或附加資料庫,都會出現版本不符導致無法轉入的訊息,不過有些情況會遇到客戶端的資料庫為較舊的版本,那到客戶端要轉入資料就會無法轉入,也不可能要求客戶端更新資料庫版本,所以下列方法是用指令碼執行轉入較舊的資料庫,這算是比較不正統的方式,不過資料表的轉入還算正常,不過還是建議將資料庫版本升級,這樣會比較沒有問題。

 

 

SQL Server 2008 資料庫移轉至SQL Server 2005實作步驟:

 

SQL Server 2008部分:

 

範例資料庫test,裡面有一張資料表【dbo Table_1】,以此做示範

1 

 

test資料庫按右鍵-->工作-->產生指令碼。

2

指令碼精靈畫面,按【下一步】。

3

選擇test資料庫,按【下一步】。

4

選擇指令碼選項的針對伺服器版本編寫指令碼,預設為【SQL Server 2008】,要將SQL Server 2008資料庫轉入SQL Server 2005,所以選擇【SQL Server 2005】,按【下一步】。

5

  • 註:若是要轉入SQL Server 2000,針對伺服器版本編寫指令碼必須選擇SQL Server 2000。

 

選擇物件類型,勾選資料表,按【下一步】。

 6

 

選擇資料表,目前範例資料表只有一張,所以勾選【Table_1】,按【下一步】。

 7

輸出選項的指令碼模式,選擇【編寫指令碼至檔案】,檔案名稱預設存放路徑為我的文件夾裡,預設檔名【script.sql】,依需求修改位置,另存為選擇【Unicode文字】,按【下一步】。

8

 

指令碼精靈摘要,按【完成】。

 9

產生指令碼進度,如下圖所示,代表成功產出,按【關閉】。

 10

 

SQL Server 2005部分:

將SQL Server 2008上產生的指令碼【script.sql】複製到SQL Server 2005上,開啟指令碼,Microsoft SQL Server Management Studio的檔案-->開啟-->檔案。

11

選擇【script.sql】,按【開啟】。

 12

指令碼開啟畫面如下,在執行指令碼前先確定是否有個乾淨的test資料庫,若沒有的話,指令碼會執行失敗,如下圖所示

 13

確定有test資料庫後,按【執行】,訊息出現命令已順利完成,如下圖所示,代表指令碼執行成功。

 14

展開test資料庫,查詢一下資料表正常轉入,如下圖所示。

 15

 

 

Jerry_IT 周伯恆 2010 ~2016 Microsoft® MVP Award
部落格:http://www.dotblogs.com.tw/jerry710822