oracleclient连oracle库 报System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > oracleclient连oracle库 报System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本

oracleclient连oracle库 报System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本

 2013/7/17 10:14:58  web报表  博客园  我要评论(0)
  • 摘要:在iis下发布eworkflow+eform+ebiao的代码,访问oracle的数据库,用oracleClient或者oledb的方式连接,有时会报“System.Data.OracleClient需要Oracle客户端软件8.1.7或更高版本。”的错误,无法创建OracleConnection原因:Oracle9.2运行在NTFS的分区上时,对于某些非administrator组的用户,ORACLE_HOME目录是不可见的
  • 标签:system ORA client 客户 客户端 Oracle 软件 版本

在iis下发布eworkflow+eform+ebiao的代码,访问oracle的数据库,用oracleClient或者oledb的方式连接,有时会报“System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本。 ”的错误,无法创建OracleConnection

原因:
Oracle 9.2运行在NTFS的分区上时,对于某些非administrator组的用户,ORACLE_HOME 目录是不可见的,而在windows server 2003或xp下asp.net应用使用的帐户是netword service,因此无法创建oracle连接,只要重设一下ORACLE_HOME目录的权限就可以了。

解决办法:
1、以管理员的用户登录
2、找到ORACLE_HOME文件夹(我的是d:/oracle/ora92),点右键,选属性--安全,在组或用户栏中选“Authenticated Users”,在下面权限列表中把“读取和运行”的权限去掉,再按应用;重新选上“读取和运行”权限,点击应用;选权限框下面的“高级”按钮,确认“Authenticated Users”后面的应用于是“该文件夹、子文件夹及文件”,按确定把权限的更改应用于该文件夹;
3、重新启动计算机,让权限设置生效(请注意,这一步很重要);
4、登录后运行asp.net应用,正常取得Oracle数据库的数据。


应用Authenticated Users的权限时间可能很长,因为ora92目录中的文件数量很多。

注意:上面这些是设置权限方面的,如果配置完上面这些报ORA-12154的错误,需要在服务器上配置“Net Configuration Assistant”。

发表评论
用户名: 匿名