我正在尝试学习ORP.net并查看this article on Deploying ODP.NET with Oracle Instant Client。我已经下载并复制了项目中的所有DLL,但是在测试步骤中,当构建应用程序时,我收到以下错误:
OCIEnvCreate failed with return code -1 but error message text was not available
我正在使用oraclexe
并且我有一个Oracle客户端。我已经授权经过身份验证的用户。我该如何解决这个问题?
答案 0 :(得分:6)
尝试连接到Oracle数据库时,会收到以下错误:
OCIEnvCreate失败,返回码为-1,但错误消息文本不可用
原因:
您在Windows 7上使用的是不受支持的Oracle客户端版本(早于11.2)。
以前安装的Oracle客户端的DLL已经留在系统上,导致冲突。
解决方案:
安装受支持的Oracle客户端版本。
在本地计算机上搜索“OCI.DLL”。如果您在ORACLE_HOME
以外的任何位置找到此文件的任何实例,请将其重命名或删除。如有疑问,请卸载Oracle客户端,然后再次执行搜索。任何剩下的东西都是罪魁祸首。
答案 1 :(得分:2)
对我有用的是将ORACLE_HOME
设为oracle\client\your_version\home1
而不是oracle\client\your_version\home1\BIN
答案 2 :(得分:0)
重新安装Oracle并使用新的安装文件夹更新ORACLE_HOME
环境变量。
在再次尝试申请之前,不要忘记回收您的应用程序池。
答案 3 :(得分:0)
我还必须为x86和x64应用程序创建符号目录链接。我必须采取的步骤如下:
答案 4 :(得分:0)
尝试将Power BI连接到Oracle数据库时,我也遇到了同样的问题。
我安装了2个版本的Oracle客户端。 11.2和10.2。当我卸载旧版本时,它就像一个魅力。
需要注意的一点是,在Power BI中,当连接到oracle数据库时,它要求我提供服务器。但是我要输入的是我的tnsnames.ora文件中该连接的名称:)