一、前言
最近開始在CSDN上回答一些關(guān)于數(shù)據(jù)庫的問題,發(fā)現(xiàn)sqlserver占比挺高,或許現(xiàn)在學(xué)校里教的就是這個(gè)數(shù)據(jù)庫吧。但sqlserver有些語法和ORACLE不一樣,有些sql得不到驗(yàn)證,我就打算自己裝個(gè)sqlserver的docker測試一下,可是當(dāng)我使用navicat去連接sqlserver時(shí),報(bào)錯(cuò)了
[IM002] [Microsoft][ODBC 驅(qū)動(dòng)程序管理器] 未發(fā)現(xiàn)數(shù)據(jù)源名稱并且未指定默認(rèn)驅(qū)動(dòng)程序
二、網(wǎng)上的方案
網(wǎng)上很容易搜到這個(gè)問題的答案,就是進(jìn)入navicat的安裝目錄,找到sqlncli_x64.msi,安裝即可。
但是!
按照那些教程安裝后,你會發(fā)現(xiàn),報(bào)錯(cuò)變成了這樣
三、初步分析
首先我確保了前面的配置沒有填錯(cuò),sqlserver的服務(wù)器地址和ip是用逗號分隔的
然后我注意到了安裝navicat自帶的sqlncli_x64.msi時(shí),上面顯示的是"SQL Server 2008 Native Client"
莫非是版本問題?于是我去找了下sqlserver的驅(qū)動(dòng),msodbcsql.msi這個(gè)包是odbc的,結(jié)果安裝上去沒識別出來。
由于當(dāng)時(shí)只是要驗(yàn)證一個(gè)sql,我就先在網(wǎng)上找了個(gè)在線數(shù)據(jù)庫的網(wǎng)站測了,然后之后又忙著做其他事,忘了。
然后今天2021-12-22,我發(fā)現(xiàn)CSDN有人在問這個(gè)問題,也是navicat連不上sqlserver,然后下面一堆回復(fù)說自己也連不上。我意識到這個(gè)問題可能的確沒人給出最新版的解決方案,所以就花了點(diǎn)時(shí)間研究。
四、正式分析
首先我以關(guān)鍵字"SQL Server Native Client"在bing上搜索,得到
結(jié)合上面兩個(gè)內(nèi)容,基本可以確定,11版本的客戶端應(yīng)該是可以連接sqlserve2019的,而且我前面的報(bào)錯(cuò)是10版本的客戶端報(bào)出來的,那么現(xiàn)在的問題就是,去哪下這個(gè)11版本的客戶端,或者是不是有更新的客戶端。
根據(jù)上面一張圖的頁面里,得到一個(gè)這樣的鏈接
https://docs.microsoft.com/en-us/sql/relational-databases/native-client/applications/support-policies-for-sql-server-native-client?view=sql-server-ver15
打開,一路看下去,相關(guān)內(nèi)容
點(diǎn)進(jìn)去第一個(gè)(這篇文章竟然是2021年9月22號的)
這里說的是SQLSERVER2016版本自帶客戶端,但我肯定不會去下那個(gè)龐然大物。點(diǎn)"see SQL Server Native Client"進(jìn)去,會告訴你不要用這玩意了,建議改用OLE DB的
但是如果去下載安裝OLE DB版本的,你會發(fā)現(xiàn)NAVICAT里識別不出來。
所以回到上一頁,看這句
You can also get sqlncli.msi from the SQL Server 2012 Feature Pack web page. To download the most recent version of the SQL Server Native Client, go to Microsoft? SQL Server? 2012 Feature Pack.
最新版本的客戶端在sqlserver2012里面,點(diǎn)擊鏈接進(jìn)去,點(diǎn)download,選擇體積大一點(diǎn)的這個(gè)sqlncli.msi下載
安裝好后,在navicat的連接編輯頁面中,出現(xiàn)了11版本的驅(qū)動(dòng)
選擇它,然后測試文章來源:http://www.zghlxwxcb.cn/news/detail-442470.html
完美解決,如果有彈幕,此時(shí)應(yīng)該滿屏的氫氧根離子了吧 ohohohohohohoh~文章來源地址http://www.zghlxwxcb.cn/news/detail-442470.html
- 本文作者: DarkAthena
- 本文鏈接: https://www.darkathena.top/archives/navicat-2-sqlserver2019-error
- 版權(quán)聲明: 本博客所有文章除特別聲明外,均采用CC BY-NC-SA 3.0 許可協(xié)議。轉(zhuǎn)載請注明出處!
到了這里,關(guān)于【SQLSERVER】如何解決Navicat Premium連接sqlserver2019報(bào)錯(cuò)的問題的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!