首頁 > 軟體

SQL Server附加資料庫時出現錯誤的處理方法

2022-12-17 14:01:25

前言

SQL Server 是資料庫軟體中比較常見且實用的軟體,它的整合度很高,且功能非常強大。很多型別的網站系統後臺資料庫都依賴於SQL Server。但是,對於初學者而言,在操作過程中總是會出現各種各樣的錯誤。現在,我對“無法升級資料庫”這種報錯資訊,做詳細處理流程的講解。

一、如何附加資料庫?

1.選擇要新增的資料庫檔案,也就是.MDF和.LDF檔案,將他們複製到SQL Server的工作目錄下的存放資料指令碼的位置。

選擇複製資料庫檔案:

將複製好的資料庫檔案貼上到SQL Server的工作目錄下,我這裡以路徑“C:Program FilesMicrosoft SQL ServerMSSQL15.MSSQLSERVERMSSQLDATA”為例。

2.開啟SSMS(資料庫使用者端管理工具),右鍵資料庫,選擇附加:

3.點選新增,選擇剛才貼上進資料庫工作目錄中的資料庫檔案(這裡以TourDB.MDF為例),點選確定。

展開資料庫,出現了我們剛才新增選擇的資料庫,說明附加成功。如果失敗,附加時,就會報錯。

二、無法升級資料庫,出現(539類似版本號不匹配)錯誤解決辦法

1.常見的無法附加資料庫時,出現的錯誤

(1)資料型別不匹配,也就是說新增的資料指令碼不符合SQL Server的規範,通常是SQL語句出現了出錯誤。

(2)無法解析資料庫,即伺服器無法存取資料庫檔案,就是資料庫損壞了。

(3)無法升級資料庫檔案,就是伺服器執行相關SQL操作時失敗,大多數情況下都是資料庫版本不相容的問題。

2.無法升級資料庫的解決辦法

(1)首先,先看一看,出錯的資訊內容

很明顯,版本不相容,但是,我們還是要檢視一下對應的版本,這一點很重要,會在後面的解決辦法中起大作用。

(2)檢視版本號,及相容資訊。右鍵任意一個建立好的資料庫,選擇屬性,在選擇頁中,點選選項,就可以看到右邊列表頁中的相容級別下拉選單。

因為我使用的是Sql Server2019,所以它相容的最低版本是2008的。下面,我們再檢視一下Sql Server的相容表單:

Target SQL Server VersionSource SQL Server VersionInternal Database Version
SQL Server 2008 R2665
SQL Server 2008661
SQL Server 2008 R2SQL Server 2005 with vardecimal enabled612
SQL Server 2005611
SQL Server 2000539
SQL Server 2008661
SQL Server 2008SQL Server 2005 with vardecimal enabled612
SQL Server 2005611
SQL Server 2000539
SQL Server 2005 SP2+SQL Server 2005 with vardecimal enabled612
SQL Server 2005611
SQL Server 2005SQL Server 2000539
SQL Server 7515
SQL Server 2000SQL Server 2000539
SQL Server 7515
SQL Server 7SQL Server 7515

(3)針對性解決辦法:使用虛擬機器器,在windows虛擬機器器中安裝與本機安裝的Sql Server的相容最低版本的Sql Server,此時,上述列舉的Sql Server不同版本對應的相容版本的敘述就起了作用。

(4)將在本機中無法附加的資料庫檔案在虛擬中安裝的可以相容的最低版本中附加,然後分離,複製分離後的資料庫檔案,再重新附加到本機資料庫中,即可解決無法升級資料庫,完成附加的問題。

在虛擬機器器中的Sql Server中完成附加,我這裡是Sql Server2019,所以在虛擬中安裝的是Sql Server2008。

分離資料庫,點選任務,選擇分離

分離時,勾選“刪除”,點選確定

在虛擬機器器中找到剛才的資料庫檔案,將它們貼上到本機,在本機重新附加。

對比前後的操作時間,可以發現很明顯發生了變化:

重新附加資料庫:

左下角顯示正在執行,說明資料庫版本不相容的問題已經解決。

總結

本篇文章主要針對附加資料庫時,出現“無法升級資料庫”,版本不相容的錯誤給出了詳細的解決過程。為什麼要在虛擬機器器中使用另一個低版本的Sql Server對資料庫檔案進行升級,再進行分離轉換呢?這是因為有時候我們用的資料庫可能是拷貝別人的,當我們無法使用自己原生的Sql Server開啟它們時,是很難知道它們的庫表結構的,所以重新建立一個和它們一摸一樣的庫表,可以說幾乎不可能,而且費時費力。因此採用這種辦法,只需要安裝虛擬機器器,安裝相容的低版本的Sql Server就能快速解決這種問題。這只是我在學習實踐過程的一點操作經驗,希望對遇到類似問題的朋友有所幫助。

到此這篇關於SQL Server附加資料庫時出現錯誤的處理方法的文章就介紹到這了,更多相關SQL Server附加資料庫錯誤內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com