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