2016年4月3日 星期日

在SQL Server 2012安裝Northwind資料庫

Northwind是微軟提供的範例資料庫,我們可以利用這個資料庫來練習資料庫或程式語言相關的技術,但這個資料庫是SQL Server 2000的範例,安裝在SQL Server 2012可能會碰到一些問題,這篇文章是我自己在安裝時所碰到的問題紀錄。

下載

可以在微軟網站中下載:

安裝

照下面圖示操作即可:




上述步驟完成後在C:\SQL Server 2000 Sample Databases中找到需要的檔案。

問題及解決

現在有兩個方法可以安裝Northwind,一個是Attach Database,另一個是直接執行.sql,我先嘗試了Attach的方式。

Attach Database

在SSMS中對Database按右鍵>Attach
Add>NORTHWIND.MDF>OK

問題1

出現錯誤,點Databases to attach的Message連結,出現錯誤訊息:
Operating System error 5

解決

SSMS要以系統管理員身分執行

問題2

its non-release version(539)is not supported by this version of SQL Server

為何發生

Google發現有人也有同樣的問題:
SQL Server可以還原資料庫的版本只有前面的兩到三個版本,例如我現在用的是2012,那我可以還原的最舊版本就是2005的,所以當然2012沒辦法還原2000的資料庫。

那我們就來看一下執行.sql的方法可不可行好了。

Execute SQL

問題

把instnwnd.sql直接用SSMS執行,會發生下面的錯誤:
Could not  find store procedure 'sp_dboption'
再次請教Google大神:
發現到原來sp_dboption已經被棄用了,要改用ALTER DATABASE。
所以代表我們要把sp_dboption的指令轉乘ALTER DATABASE。
於是我們去查[trunc. log on chkpt.]及[select into/bulkcopy],很幸運的我們在同一個頁面找到:
發現原來這兩行的是在設定復原模式的而且也知道他們要設定的數值,那我們就把這兩行替換成:
ALTER DATABASE Northwind SET RECOVERY SIMPLE
ALTER DATABASE Northwind SET RECOVERY BULK_LOGGED
之後再執行一次SQL就好了。

沒有留言:

張貼留言