妳解決不了是肯定的。需要修改源代碼。
Active Server Pages和Microsoft數據訪問組件中80004005錯誤的疑難解答
概述
本文列出了80004005的各種錯誤信息,最常見的錯誤信息產生原因以及解決問題的故障排除步驟。80004005的錯誤是Active Server Pages中的Microsoft數據訪問組件(MDAC),包括Microsoft ActiveX數據對象(ADO)、OLE DB和遠程數據服務(RDS)。盡管本文假設您在Active Server Pages (ASP)頁面中使用ADO,但錯誤原因和許多故障排除步驟適用於任何使用ODBC進行數據訪問的環境。
回到頂端
更多信息
錯誤信息列表
80004005壹條錯誤消息表明您的數據無法訪問。這個錯誤可以解釋為“由於某種原因,我無法訪問您的數據”。本節列出了最常見錯誤消息的內容和原因。有關可能有助於確定錯誤原因的其他相關文章,請參見參考資料部分。雖然本文試圖提供盡可能多的信息,但仍有可能遺漏。
出錯信息
用於ODBC驅動程序的Microsoft OLE DB訪問接口錯誤“80004005”
[Microsoft][ODBC Microsoft Access 97驅動程序]
Microsoft Jet數據庫引擎無法打開文件“(未知)”。它已被另壹用戶以獨占方式打開,或者您需要查看其數據的權限。
原因
這壹信息有幾個原因。有關其他信息,請單擊下面的文章編號,以查看Microsoft知識庫中相應的文章:
306269 (/kb/306269/) PRB:錯誤80004005“Microsoft Jet數據庫引擎無法打開文件”(未知)。
189408 (/KB/189408/)修復:ASP無法訪問IIS 4.0和IIS 5.0中的網絡文件。
出錯信息
用於ODBC驅動程序的Microsoft OLE DB訪問接口錯誤“80004005”
[Microsoft][ODBC Microsoft Access 97驅動程序]無法使用'(未知)';文件已在使用中。
原因
無法為多個用戶正確鎖定數據庫。有關其他信息,請單擊下面的文章編號,以查看Microsoft知識庫中相應的文章:
174943(/kb/174943/)PRB:80004005“無法使用'(未知)';文件已在使用中“((未知)”無法使用,文件已在使用中)
出錯信息
用於ODBC驅動程序的Microsoft OLE DB訪問接口錯誤“80004005”
[Microsoft][ODBC驅動程序管理器]未找到數據源名稱,也未指定默認驅動程序。
原因
這個錯誤是常見的錯誤之壹,有很多解決方法。有關其他信息,請單擊下面的文章編號,以查看Microsoft知識庫中相應的文章:
306345 (/KB/306345/) PRB: ASP錯誤80004005“找不到數據源名稱”
請確保安裝了最新的驅動程序。可以從下面的Microsoft網站下載最新版本的MDAC:
/dataaccess (/dataaccess)
出錯信息
用於ODBC驅動程序的Microsoft OLE DB訪問接口錯誤“80004005”
[Microsoft][ODBC驅動程序管理器]數據源名稱不是
原因
出現這個錯誤的原因是電腦上安裝和卸載軟件的順序有問題。如果ODBC核心文件變得不同步(它們應該都是相同的版本),您可能會收到此錯誤。
要更新所有核心ODBC驅動程序,請從以下Microsoft網站安裝最新版本的MDAC:
/dataaccess (/dataaccess)
出錯信息
用於ODBC驅動程序的Microsoft OLE DB訪問接口錯誤“80004005”
[Microsoft][ODBC Access 97 ODBC驅動程序驅動程序]常規錯誤無法打開註冊表項“DriverId”。
原因
當您從註冊表中讀取值時,會出現此錯誤。使用註冊表編輯器(Regedt32.exe)檢查註冊表項的權限。您還可以使用Windows NT註冊表監視器(NTRegMon)來檢查註冊表讀取故障。您可以從以下Sysinternals網站下載NTRegMon:
()
出錯信息
用於ODBC驅動程序的Microsoft OLE DB訪問接口錯誤“80004005”
[Microsoft][ODBC SQL Server驅動程序][dbnmpntw]connection open(create file())。
原因
這個錯誤有兩個原因,都與權限有關。當數據庫駐留在Web服務器以外的計算機上時,或者當您使用通用命名約定(UNC)路徑(\\Server\Share)來引用數據庫時,會出現此錯誤。即使數據庫和Web服務器位於同壹臺計算機上,當您使用UNC路徑時,Web服務器也會假定數據庫位於網絡上的不同計算機上。
有關其他信息,請單擊下面的文章編號,以查看Microsoft知識庫中相應的文章:
175671(/KB/175671/)PRB:80004005訪問SQL時出現連接打開(create file())錯誤。
有關委派、Microsoft Internet Information Server(IIS)如何使用身份驗證來保護網站等的更多信息,請訪問以下Microsoft網站:
Internet開發人員的IIS身份驗證和安全性。
/library/default.asp?URL =/library/en-us/dnauth/html/dnauth _ security . ASP(/library/default . ASP?URL =/library/en-us/dnauth/html/dnauth _ security . ASP)
出錯信息
用於ODBC驅動程序的Microsoft OLE DB訪問接口錯誤“80004005”
Microsoft][ODBC Microsoft SQL驅動程序]登錄失敗()
原因
如果SQL Server不接受或識別提交的登錄帳戶和/或密碼(如果您使用“標準”安全性),或者沒有從Windows NT帳戶到SQL帳戶的映射(如果您使用“集成”安全性),SQL Server將生成此錯誤。
有關其他信息,請單擊下面的文章編號,以查看Microsoft知識庫中相應的文章:
306586(/KB/306586/)PRB:ASP中錯誤80004005“登錄失敗”的故障排除。
出錯信息
用於ODBC驅動程序的Microsoft OLE DB訪問接口錯誤“80004005”
[Microsoft][ODBC SQL Server驅動程序][SQL Server]登錄失敗-用戶:原因:未定義為受信任的SQL Server連接的有效用戶。
原因
發生此錯誤是因為在SQL企業管理器中打開了“集成”安全性,並且所使用的Windows NT帳戶未映射到SQL帳戶。要解決此問題,請使用以下方法之壹:?將SQL Server配置為使用標準安全性。在SQL企業管理器中,右鍵單擊服務器,然後單擊SQL Server。在“SQL Server屬性”對話框中,單擊“安全選項”選項卡。在身份驗證下,單擊選擇SQL Server和Windows,然後單擊確定。
如果您正在IIS 4.0下運行,請清除此項目的密碼同步復選框。
出錯信息
用於ODBC驅動程序的Microsoft OLE DB訪問接口錯誤“80004005”
[Microsoft][ODBC Microsoft Access 97驅動程序]無法鎖定文件。
原因
有關其他信息,請單擊下面的文章編號,以查看Microsoft知識庫中相應的文章:
306441(/KB/306441/)PRB:ASP。
出錯信息
用於ODBC驅動程序的Microsoft OLE DB訪問接口錯誤“80004005”
[Microsoft][ODBC Microsoft Access 97驅動程序]
“(未知)”不是有效的路徑。請確保路徑名拼寫正確,並且您已連接到文件所在的服務器。
原因
Web服務器正在讀取的路徑不是有效路徑。使用Global.asa文件時,如果連接字符串是在Web服務器以外的計算機上創建的,通常會出現此錯誤。如果路徑是映射的驅動器號,它可能僅對創建連接字符串的客戶端有效。
出錯信息
用於ODBC驅動程序的Microsoft OLE DB訪問接口錯誤“80004005”
[Microsoft][ODBC SQL Server驅動程序][SQL Server]
查詢和其中的視圖超過了16個表的限制。
原因
出現此錯誤是因為查詢太復雜。對查詢有壹些限制。
出錯信息
用於ODBC驅動程序的Microsoft OLE DB訪問接口錯誤“80004005”
[Microsoft][ODBC SQL Server驅動程序][DBNMPNTW]
connection write(GetOverLappedResult())。
原因
如果關閉允許匿名用戶上下文,Windows NT將在第壹個請求完成後關閉SQL Server的管道。這是因為首次連接到SQL Server時使用了IIS匿名用戶帳戶。然後,IIS要麽在同壹線程上模擬瀏覽器客戶端,要麽嘗試訪問在模擬的用戶上下文中運行的另壹個線程上的連接。在任何情況下,Windows NT都會檢測到使用在另壹個用戶的上下文中打開的網絡來命名管道句柄的嘗試,並根據安全規則強制關閉管道。當您使用網絡監視器查看SQL Server上的連接時,Windows NT將發出壹個命名管道關閉請求,這將在Web瀏覽器中導致此錯誤。
出錯信息
用於ODBC驅動程序的Microsoft OLE DB訪問接口錯誤“80004005”
[Microsoft][ODBC SQL Server驅動程序][DBMSSOCN]
壹般網絡錯誤。檢查您的網絡文檔
原因
重命名SQL Server計算機時會出現此錯誤。當找不到計算機名時,引用原始名稱的域名系統(DNS)將失敗。
出錯信息
用於ODBC驅動程序的Microsoft OLE DB訪問接口錯誤“80040e21”
出現錯誤
-或者-
80004005:connection write(GetOverLappedResult)
原因
當您試圖在字段中插入超出允許範圍的數據時(例如,將26個字符插入到格式設置為僅接受25個字符的Microsoft Access字段中),會出現此錯誤。
有關其他信息,請單擊下面的文章編號,以查看Microsoft知識庫中相應的文章:
166659(/KB/166659/)PRB:再次嘗試訪問SQL數據庫失敗。
出錯信息
多步OLE DB操作生成了錯誤。檢查每個OLE DB狀態值(如果有)。沒有做任何工作。
原因
造成這種錯誤的原因有很多;有關與此錯誤消息相關的文章,請參見參考資料部分。
出錯信息
Microsoft OLE DB Provider for ODBC驅動程序錯誤“80040e14”
[Microsoft][ODBC Microsoft Access 97驅動程序]
INSERT INTO語句中的語法錯誤。
原因
出現此錯誤是因為列名可能是保留字(如“DATE”)。將列名更改為非保留字(如“SaleDate”)。
出錯信息
Microsoft OLE DB Provider for ODBC驅動程序錯誤“80040e10”
[Microsoft][ODBC Microsoft Access 97驅動程序]
參數太少。預期1。
原因
出現此錯誤是因為您在查詢語法中使用了不存在的列名。通常,這個錯誤只是壹個拼寫錯誤。將數據庫中的列名與查詢字符串進行比較。如果使用Microsoft Access,請確保使用實際的列名,而不是列的顯示名。
參考資料:
微軟中文主頁