1、現象:html
C#程序中須要以Provider=OraOLEDB.Oracle.1方式訪問ORACLE數據庫。但程序執行時報異常:未在本地計算機註冊「OraOLEDB.Oracle.1」提供程序sql
2、解決方案:數據庫
一、在Oracle安裝目錄找到Oracle的主程序目錄,點擊鼠標右鍵->屬性->安全,對ASP.NET或者NETWORK SERVICE 賬戶賦予容許讀、執行權限,並在「高級」中保證該目錄的子目錄、文件都繼承這些屬性。安全
二、服務器ORACLE爲10g,雖然安裝時選擇了Oracle Data Provider for .net和Oracle Provider for OLE DB。可是仍是須要人工命令行註冊一下
regsvr32 D:\oracle\10.2.0\db\BIN\OraOLEDB10.dll。
其餘觀點:
解決方法以下:
1)到ORACLE_HOME目錄,如c:\Oracle\Ora92 點擊鼠標右鍵->屬性->安全, 對ASP.NET 賬戶賦予容許讀、執行權限,並在「高級」中保證該目錄的子目錄、文件都繼承這些屬性,肯定。
2)從新註冊oraoledb.dll: regsvr32 $\oracle\ora92\bin\oraoledb.dll 2 這種狀況有3種可能的緣由 1.裝Oracle 的機器是否是NTFS的?若是是的話,將\Ora81下的BIN的權限,所有放開,給全部用戶。 (否則在B/S結構下會由於沒有權限訪問目錄而報這個錯誤) 2.若是數據庫服務器是Oracle816的。在服務器的那臺機器上找Ora81\network\ADMIN下的sqlnet.ora文件,把裏面的 SQLNET.AUTHENTICATION_SERVICES= (NTS)改爲 SQLNET.AUTHENTICATION_SERVICES= (NONE) (這種會形成某些機器上報驅動初始化失敗的錯誤,在用OracleClient下出現過一次) 3.若是以上都沒有解決問題。能夠考慮是否是註冊表裏 ...服務器
參考出處:http://blog.sina.com.cn/s/blog_4d5a94ae0100fcq9.htmloracle
===========================================================ide
使用ADO鏈接oracle數據庫時,鏈接串使用Provider=OraOLEDB.Oracle時提示「未找到提供程序。該程序可能未正確安裝」。
緣由:正如提示信息所說
查看oracle安裝目錄下的BIN目錄,發現沒有OraOLEDB*.dll
解決方法:
下載對應的驅動程序,或從運行正常的機器上拷貝上述dll文件
而後註冊其中的 OraOLEDB10.dll(其它版本的oracle可能後面的數字會跟隨變化)
註冊方法:
在其所在目錄下執行
regsvr32 OraOLEDB10.dll測試
備註說明:
對於各類數據庫的鏈接方式,可參考www.connectionstrings.com
另外,這個網站也提供各個驅動的下載連接。網站
參考出處:http://blog.csdn.net/dux003/article/details/5653737.net
===========================================================
網上還有關於文件夾權限的操做,如今也一塊兒檢查是否這種可能性致使的錯誤。以下
運行B/S程序時,出現標題上的錯誤信息,如下面的方法解決:
1.首先確保服務器已安裝「Oracle Provider for OLE DB」提供程序。
2.找到Oracle的安裝目錄,如「D:\oracle92」,爲該目錄添加Everyone用戶,並給予徹底控制權限,在高級中勾選上「用在此顯示的能夠應用到子對象的項目替代全部子對象的權限項目」,肯定後就能夠訪問了,附權限設置圖例。
參考出處:http://blog.163.com/y_p_xu/blog/static/1708571022011215120175/
================================================================
網上還有對IIS服務器進行設置的,參考以下
因工做關係很久沒有搞網站了,最近在搞一個ASP的宣傳網站,本想在本地測試遇到一些問題,整理記錄下以備往後有需。
演示環境:W7 旗艦版64位 + IIS7 + ASP網站
錯誤信息以下:
ADODB.Connection 錯誤 '800a0e7a'
未找到提供程序。該程序可能未正確安裝。
/admin/Inc/Conn.asp,行 23
在出現這個錯誤以後作了幾個判斷:
一、此套ASP網站 在正式服務器部署正常,也就能夠證實網站代碼是OK的;
二、IIS安裝正常,運行正常,使用其餘網站也能夠;
三、是否是站點權限問題?檢查多站是正常的。
後來想到是否是應用程序池的問題由於系統是64位的,檢查了應用有32位應用程序的設置,一修改好了。
解決方法:
找到IIS應用程序池,「設置應用程序池默認屬性」->「常規」->」啓用 32 位應用程序」,設置爲 True。
這樣個人問題就解決了。。
參考出處:http://www.3lian.com/edu/2014/07-09/154710.html