bestlong 怕失憶論壇

 

 

搜索
bestlong 怕失憶論壇 論壇 MS WebForm Tech ADODB.Connection (0x800A0E7A) 找不到提供者。它可能未 ...
查看: 11070|回復: 1
go

ADODB.Connection (0x800A0E7A) 找不到提供者。它可能未被正確安裝 [複製鏈接]

Rank: 9Rank: 9Rank: 9

1#
發表於 2011-3-18 20:36 |只看該作者 |倒序瀏覽 |打印
環境 XPP SP3(IIS 5.1) + SQL 2008 Express

ASP 的程式碼很單純就是
  1. <%
  2. connStr = "Provider=SQLOLEDB.1;Data Source=dbservername\SQLEXPRESS;User Id=dbuser;Password=mypassword;Initial Catalog=mydb;"
  3. set conn = Server.CreateObject("ADODB.Connection")
  4. conn.Open(connStr)
  5. set conn = Nothing
  6. %>
複製代碼
錯誤類型:
ADODB.Connection (0x800A0E7A)
找不到提供者。它可能未被正確安裝。

錯誤訊息中所找不到的提供者是指連接字串內的 Provider=SQLOLEDB.1; 這個部份.

不過直接採用建立 db.udl 資料連接設定檔來測試 OLE DB 連線卻是可以正常連線.
我是雪龍
http://blog.bestlong.idv.tw
http://www.bestlong.idv.tw

Rank: 9Rank: 9Rank: 9

2#
發表於 2011-3-18 21:50 |只看該作者
解決方式 http://support.microsoft.com/kb/311766/zh-tw

當您在 ASP 網頁中存取提供者時

ADODB.Connection (0x800A0E7A) Provider cannot be found.It may not be properly installed./Nwind.asp, line 10 (找不到 ADODB. 連線 (0x800A0E7A) 提供者。可能並未正確安裝。/Nwind.asp,第 10 行)

因為 Microsoft Data Access Components (MDAC) 需要的動態連結程式庫 (DLL) 並未登錄,所以會發生此錯誤。

1.按一下 [開始],按一下 [執行],然後輸入 cmd。
2.在命令提示字元中,輸入 cd %systemroot%:\Program Files\Common Files\System\Ole。
3.在命令提示字元中,輸入 regsvr32 sqloledb.dll。
4.當您收到已成功登錄 DLL 的確認訊息時,按一下 [確定]。注意:此解決方案使用 Microsoft SQL Server OLE Provider DLL (Sqloledb.dll) 做為範例。因為未登錄的 DLL 可能會根據您使用的 OLE DB 提供者而有所不同,您必須根據情況修改步驟 2。


而在 XP 環境是執行下列命令

C:\> CD "\Program Files\Common Files\System\Ole DB"
C:\Program Files\Common Files\System\Ole DB>regsvr32 sqloledb.dll

重新開機後就修復了.
我是雪龍
http://blog.bestlong.idv.tw
http://www.bestlong.idv.tw
‹ 上一主題|下一主題

Archiver|怕失憶論壇

GMT+8, 2024-4-25 22:10 , Processed in 0.020890 second(s), 10 queries .

Powered by Discuz! X1.5

© 2001-2010 Comsenz Inc.