SQL?Server附加數(shù)據(jù)庫時出現(xiàn)錯誤的處理方法
前言
SQL Server 是數(shù)據(jù)庫軟件中比較常見且實用的軟件,它的集成度很高,且功能非常強大。很多類型的網(wǎng)站系統(tǒng)后臺數(shù)據(jù)庫都依賴于SQL Server。但是,對于初學者而言,在操作過程中總是會出現(xiàn)各種各樣的錯誤?,F(xiàn)在,我對“無法升級數(shù)據(jù)庫”這種報錯信息,做詳細處理流程的講解。
一、如何附加數(shù)據(jù)庫?
1.選擇要添加的數(shù)據(jù)庫文件,也就是.MDF和.LDF文件,將他們復制到SQL Server的工作目錄下的存放數(shù)據(jù)腳本的位置。
選擇復制數(shù)據(jù)庫文件:
將復制好的數(shù)據(jù)庫文件粘貼到SQL Server的工作目錄下,我這里以路徑“C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\DATA”為例。
2.打開SSMS(數(shù)據(jù)庫客戶端管理工具),右鍵數(shù)據(jù)庫,選擇附加:
3.點擊添加,選擇剛才粘貼進數(shù)據(jù)庫工作目錄中的數(shù)據(jù)庫文件(這里以TourDB.MDF為例),點擊確定。
展開數(shù)據(jù)庫,出現(xiàn)了我們剛才添加選擇的數(shù)據(jù)庫,說明附加成功。如果失敗,附加時,就會報錯。
二、無法升級數(shù)據(jù)庫,出現(xiàn)(539類似版本號不匹配)錯誤解決辦法
1.常見的無法附加數(shù)據(jù)庫時,出現(xiàn)的錯誤
(1)數(shù)據(jù)類型不匹配,也就是說添加的數(shù)據(jù)腳本不符合SQL Server的規(guī)范,通常是SQL語句出現(xiàn)了出錯誤。
(2)無法解析數(shù)據(jù)庫,即服務器無法訪問數(shù)據(jù)庫文件,就是數(shù)據(jù)庫損壞了。
(3)無法升級數(shù)據(jù)庫文件,就是服務器執(zhí)行相關SQL操作時失敗,大多數(shù)情況下都是數(shù)據(jù)庫版本不兼容的問題。
2.無法升級數(shù)據(jù)庫的解決辦法
(1)首先,先看一看,出錯的信息內容
很明顯,版本不兼容,但是,我們還是要查看一下對應的版本,這一點很重要,會在后面的解決辦法中起大作用。
(2)查看版本號,及兼容信息。右鍵任意一個創(chuàng)建好的數(shù)據(jù)庫,選擇屬性,在選擇頁中,點擊選項,就可以看到右邊列表頁中的兼容級別下拉列表。
因為我使用的是Sql Server2019,所以它兼容的最低版本是2008的。下面,我們再查看一下Sql Server的兼容表單:
Target SQL Server Version | Source SQL Server Version | Internal Database Version |
---|---|---|
SQL Server 2008 R2 | 665 | |
SQL Server 2008 | 661 | |
SQL Server 2008 R2 | SQL Server 2005 with vardecimal enabled | 612 |
SQL Server 2005 | 611 | |
SQL Server 2000 | 539 | |
SQL Server 2008 | 661 | |
SQL Server 2008 | 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 2005 | 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 |
(3)針對性解決辦法:使用虛擬機,在windows虛擬機中安裝與本機安裝的Sql Server的兼容最低版本的Sql Server,此時,上述列舉的Sql Server不同版本對應的兼容版本的敘述就起了作用。
(4)將在本機中無法附加的數(shù)據(jù)庫文件在虛擬中安裝的可以兼容的最低版本中附加,然后分離,復制分離后的數(shù)據(jù)庫文件,再重新附加到本機數(shù)據(jù)庫中,即可解決無法升級數(shù)據(jù)庫,完成附加的問題。
在虛擬機中的Sql Server中完成附加,我這里是Sql Server2019,所以在虛擬中安裝的是Sql Server2008。
分離數(shù)據(jù)庫,點擊任務,選擇分離
分離時,勾選“刪除”,點擊確定
在虛擬機中找到剛才的數(shù)據(jù)庫文件,將它們粘貼到本機,在本機重新附加。
對比前后的操作時間,可以發(fā)現(xiàn)很明顯發(fā)生了變化:
重新附加數(shù)據(jù)庫:
左下角顯示正在執(zhí)行,說明數(shù)據(jù)庫版本不兼容的問題已經解決。
總結
本篇文章主要針對附加數(shù)據(jù)庫時,出現(xiàn)“無法升級數(shù)據(jù)庫”,版本不兼容的錯誤給出了詳細的解決過程。為什么要在虛擬機中使用另一個低版本的Sql Server對數(shù)據(jù)庫文件進行升級,再進行分離轉換呢?這是因為有時候我們用的數(shù)據(jù)庫可能是拷貝別人的,當我們無法使用自己本地的Sql Server打開它們時,是很難知道它們的庫表結構的,所以重新創(chuàng)建一個和它們一摸一樣的庫表,可以說幾乎不可能,而且費時費力。因此采用這種辦法,只需要安裝虛擬機,安裝兼容的低版本的Sql Server就能快速解決這種問題。這只是我在學習實踐過程的一點操作經驗,希望對遇到類似問題的朋友有所幫助。
到此這篇關于SQL Server附加數(shù)據(jù)庫時出現(xiàn)錯誤的處理方法的文章就介紹到這了,更多相關SQL Server附加數(shù)據(jù)庫錯誤內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
- sql2005 附加數(shù)據(jù)庫出錯(錯誤號:5123)解決方法
- MSSQL2005在networkservice權限運行附加數(shù)據(jù)庫報(Microsoft SQL Server,錯誤: 5120)
- sql2005附加數(shù)據(jù)庫操作步驟(sql2005還原數(shù)據(jù)庫)
- sql server2012附加數(shù)據(jù)庫問題解決方法
- MSSQL附加數(shù)據(jù)庫拒絕訪問提示5120錯誤的處理方法
- SQL附加數(shù)據(jù)庫失敗問題的解決方法
- SQL Server附加數(shù)據(jù)庫出錯,錯誤代碼5123
- MSSQL??附加數(shù)據(jù)庫提示“錯誤?823”數(shù)據(jù)恢復實操
- SQL?Server數(shù)據(jù)庫分離和附加數(shù)據(jù)庫的操作步驟
- SQL?Server2012附加數(shù)據(jù)庫5120錯誤(拒絕訪問)的解決方法
- SQL?Server附加數(shù)據(jù)庫報錯:無法為該請求檢索數(shù)據(jù)錯誤解決辦法
- SQL Server附加數(shù)據(jù)庫及出現(xiàn)5123錯誤的解決辦法
相關文章
SQL語句中的ON DUPLICATE KEY UPDATE使用
本文主要介紹了SQL語句中的ON DUPLICATE KEY UPDATE使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-08-08SQL Server 中查看SQL句子執(zhí)行所用的時間
在MSSQL Server中通過查看SQL語句執(zhí)行所用的時間,來衡量SQL語句的性能。2009-07-07Sql Server Management Studio連接Mysql的實現(xiàn)步驟
本文主要介紹了Sql Server Management Studio連接Mysql的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-04-04SQL2005、SQL2008允許遠程連接的配置說明(附配置圖)
這篇文章主要介紹了SQL2005、SQL2008允許遠程連接的配置過程,需要的朋友可以參考下2015-08-08sqlserver 多表關聯(lián)時在where語句中慎用trim()方法
最近做的一個項目由于前期數(shù)據(jù)庫設計不合理,導致多表關聯(lián)的主外鍵長度設計不一致,以致過長主外鍵中過長的字段在填入相同字段時,多余部分被填入空字符。迫于無奈,就在多表關聯(lián)的where語句中使用了trim()方法。2009-09-09C#連接Excel2003和Excel2007以上版本做數(shù)據(jù)庫的連接字符串
C#連接Excel2003和Excel2007以上版本做數(shù)據(jù)庫的連接字符串具體如下,需要的朋友可以參考下2013-11-11