首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

解決 SQL Server 遠程連線錯誤:命名管道提供者 Error 40

     編輯:關於SqlServer

錯誤現象

在 VS2005 專案中連接遠端 SQL Server 2000 時,出現:

遠程訪問 sql server,provider: 命名管道提供程序, error: 40 - 無法打開到 SQL Server 的連接

本地環境:VS2005 + SQL Server Express 2005;遠端伺服器:SQL Server 2000。

根因分析

安裝 SQL Server Express 2005 後,IIS 的 ASP.NET 全域設定與應用程式設定會自動註冊預設連線字串指向本地 Express 實例。當專案實際連線目標為遠端 SQL 2000 時,這些殘留的預設字串會干擾連線解析,導致驅動程式嘗試使用命名管道連接本地實例而失敗。

解決步驟(圖文說明)

  1. 開啟 IIS 管理器 → 對應網站右鍵 內容 → ASP.NET 標籤。
  2. 點擊 編輯全域設定 與 編輯設定 按鈕。
  3. 在連線字串清單中,找到並 移除所有預設的 SQL Server Express 連線字串(通常名為 LocalSqlServer 或類似)。
  4. 確定儲存,重新啟動 IIS(iisreset)。

IIS ASP.NET 設定頁籤


移除預設連線字串

驗證與補充

  • 確認 web.config 中的 <connectionStrings> 已正確指向遠端 SQL 2000。
  • 遠端 SQL 2000 需啟用 TCP/IP 協定(預設埠 1433),並確認防火牆允許通訊。
  • 若仍失敗,檢查本地 SQL Server Configuration Manager 中的用戶端協定順序,將 TCP/IP 移至命名管道之前。

小結

Error 40 多為用戶端協定解析錯誤。清除 IIS ASP.NET 層面的預設連線字串,確保應用程式讀取正確的 web.config 設定,即可解決此類遷移專案常見問題。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved