解決:provider:Named Pipes Provider error:40無法打開SQL Server的連接 的3種方式


解決方案:
      既然錯誤提示已經說明可能是由於實例名稱寫錯了。那么這有兩種可能性,一是SQL服務沒有開啟,二是SQL實例名真寫錯了。
1、確認服務是否開啟,我們找到服務設置界面(控制面板-->管理工具-->服務),如下圖所示:
 
 找到SQL Server服務,確認該服務已經開啟。
 (注:SQL在安裝時默認的實例名為MSSQLServer,學習版為SQLEXPRESS)
 
2、查看項目的Web.config文件,檢測數據庫連接字符串的實例名(Data Source 的值)是否正確。
如:我查看到配置的Data Source =.         點(.)表示使用MSSQLServer實例,但是從上面可以看出,我SQL使用的是Express版本數據庫,所以正確的配置應該是Data Source =. \SQLEXPRESS
       有些人會說,我也清楚什么時候用點(.),什么使用.\SQLEXPRESS,亦或是自定義的實例名。那這個也好辦,只要拿SQL測試一下即可。打開SQL SERVER Management Studio,在登錄中測試我們的數據,把服務器名稱設置為點(.),如下圖所示:
把服務器名設置為點(.),提示出錯,錯誤和上面一樣,但是我們換成“.\SQLEXPRESS”就能正常登錄了。
 
出現這種問題的情況:
       一般來說,實例名是很少配置錯誤的,但是如果是團隊項目,平時大家都運行正常,但是哪天突然把代碼和數據庫搬到其他電腦上去運行,由於不同電腦的SQL數據庫的版本的差異(有企業版的,有學習版的)就可能會出現這種問題,當然還有就是自己在安裝SQL的時候把實例名給修改成別的了。
       除了實例名的問題或服務沒有開啟,還有一種情況,就是錯誤提示所說的可能沒有允許遠程連接。這個需要到“外圍配置工具”去修改一下就可以了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM