开发环境
名称 | 版本 |
---|---|
操作系统 | Windows 10 X64 |
Microsoft Visual Studio Ultimate 2012 | 11.0.50727.1 RTMREL |
Oracle.DataAccess.dll | 4.112.3.0 |
oci.dll | 11.2.0.1 |
oraociei11.dll | 11.2.0.1 |
OraOps11w.dll | 11.2.0.1 |
问题描述
项目是一个 Web 项目,里面访问服务器上的 Oracle 数据库获取数据。
本机启动调试,=,代码报错
System.Data.OracleClient 需要 Oracle 客户端软件 version 8.1.7 或更高版本
问题分析
参考:.net调用Oracle 报错:System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本问题
Oracle.DataAccess.dll
其实是一个适配器,或者只是提供了一些接口,本身并不实现对 Oracle 数据库的读取。如果我的机器要读 Oracle 数据库的话,应该装一个 Oracle 的客户端。
问题解决
解决方案一
解决方案二
下载一个本地免安装客户端 instantclient_21_3 到
C:\Program Files\instantclient_21_3
配置目录
C:\Program Files\instantclient_21_3
到环境变量PATH
,重启启动,无效。貌似程序启动没有读取这个目录下的 Oracle 文件访问数据库。
拷贝了
C:\Program Files\instantclient_21_3
下面 3 个文件到项目运行的bin
目录,问题解决
oci.dll
oraociei11.dll
OraOps11w.dll