使用SQL2012附加一個數據庫時報出了以下錯誤:“無法升級數據庫....因為此版本的 SQL Server 不支持該數據庫的非發布版本(539)。不能打開與此版本的 sqlserver.exe 不兼容的數據庫。必須重新創建該數據庫。”
詳細截圖如下:
經過檢索得知:原來539 是Sql Server2000數據庫的內部版本號,也就是說要附加的數據庫文件是由Sql Server 2000創建的,但是我們知道Sql Server 2012 數據庫是不兼容Sql Server 2000數據庫的。如下圖所示:<喎?http://www.Bkjia.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+CiAgICAgPGltZyBzcmM9"http://www.2cto.com/uploadfile/Collfiles/20150619/2015061910120618.png" alt="\">
原來要附加的數據庫是Sql Server 2000創建的數據庫,故出現了以上的錯誤情況。此時便有了針對性的解決辦法:Sql Server 2000數據庫->(先附加到)Sql Server 2005/2008(可在另一台機子上完成或本機安裝虛擬機,虛擬機上安裝Sql Server 2005/2008)->然後分離數據庫,拷貝到目標文件夾再附加到Sql Server 2012上。
以下是查詢到的Sql Server2012以前的微軟所有 Sql Server數據庫的內部版本號列表: (Sql Server2012數據庫的內部版本號為 706)
Target SQL Server Version
Source SQL Server Version
Internal Database Version
SQL Server 2008 R2
SQL Server 2008 R2
665
SQL Server 2008
661
SQL Server 2005 with vardecimal enabled
612
SQL Server 2005
611
SQL Server 2000
539
SQL Server 2008
SQL Server 2008
661
SQL Server 2005 with vardecimal enabled
612
SQL Server 2005
611
SQL Server 2000
539
SQL Server 2005 SP2+
SQL Server 2005 with vardecimal enabled
612
SQL Server 2005
611
SQL Server 2000
539
SQL Server 7
515
SQL Server 2005
SQL Server 2005
611
SQL Server 2000
539
SQL Server 7
515
SQL Server 2000
SQL Server 2000
539
SQL Server 7
515
SQL Server 7
SQL Server 7
515
通過以上表,我們就可以很快理解這個錯誤提示了。如果要查看Sql Server的內部版本號,也可以通過下面的Sql句來查看:
SELECT DATABASEPROPERTYEX('MASTER','VERSION')