原地址:http://hi.baidu.com/softworm/item/9268325023037ecad2e10cb0
应用程序使用Oracle Instantclient连接数据库,结果报错:
System.Data.OracleClient 需要Oracle 客户端软件 version 8.1.7 或更高版本。
之前遇到这个问题一直无解,只好重新安装客户端。
今天看到一篇文章,弄清了原因,问题得解。
原因是因为.Net的Oracle驱动找不到oci.dll,
在系统环境变量中配置oci.dll的路径,重启后,问题解决。
之前总结过instantclient的使用方法,走了不少弯路, 在这里再记录一下 。
1.确认服务端数据库版本,下载对应版本的即时客户端。
2.解压至任意目录,最好不要建立bin、network等子文件夹。程序会自动寻找路径,同目录即可。
这样免得之后配置多个环境变量,我就是由于建立了文件夹却又没有配置OCI路径导致出错。
3. 添加注册表项
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment]
"LD_LIBRARY_PATH"="D:\\instantclient_10_2"
"TNS_ADMIN"="D:\\instantclient_10_2"
"NLS_LANG"="AMERICAN_AMERICA.ZHS16GBK"
[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraClient10g_home]
"NLS_LANG"="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
"ORACLE_BUNDLE_NAME"="Enterprise"
"ORACLE_GROUP_NAME"="Oracle - OraClient10g_home"
"ORACLE_HOME"="D:\\instantclient_10_2"
"ORACLE_HOME_KEY"="SOFTWARE\\ORACLE\\KEY_OraClient10g_home"
"ORACLE_HOME_NAME"="OraClient10g_home"
4.最后在系统环境变量Path里面添加“D:\\instantclient_10_2",重启系统即可。