求大神解决在win10下使用ODBC连接Oracle,提示驱动程序的 SQLAllocHandle on SQL_HANDLE_ENV 失败 20
我在win1064位,oracle10g32位环境下,VB.NET使用ODBC连接Oracle数据库,提示错误[IM004][Microsoft][ODBC驱动程序管理器...
我在win10 64位,oracle 10g 32位环境下,VB.NET使用ODBC连接Oracle数据库,提示错误[IM004] [Microsoft][ODBC 驱动程序管理器] 驱动程序的 SQLAllocHandle on SQL_HANDLE_ENV 失败。搞了一天没搞定,求大神解决!
我的环境变量没问题吧,我在ODBC管理器测试通畅,用plsql连数据库也通畅,提示程序连数据库的参数也对 展开
我的环境变量没问题吧,我在ODBC管理器测试通畅,用plsql连数据库也通畅,提示程序连数据库的参数也对 展开
1个回答
展开全部
弄了好久,原来是环境配置问题!
环境变量path值
%JAVA_HOME%\bin;%CATALINA_HOME%\bin;D:\oracle\ora92\bin;D:\oracle\isuite\jdk\jre\bin\classic;D:\oracle\isuite\jdk\jre\bin;D:\oracle\isuite\jdk\jre\bin\client;D:\oracle\isuite\jlib;D:\oracle\isuite\bin;D:\oracle\isuite\jre\1.1.8\bin;C:\Program Files\Oracle\jre\1.3.1\bin;C:\Program Files\Oracle\jre\1.1.8\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem
因为昨天又安装了一个Oracle客户端,今天发现ODBC就无法使用了,老是提示“[Microsoft][ODBC 驱动程序管理器] 驱动程序的 SQLAllocHandle on SQL_HANDLE_ENV 失败”之类的错误信息,把红色部份调到path值的最前面,成功解决问题!
解决方法:
1 选择OracleHome 目录(c:/oracle)
2 右健单击 OracleHome 目录,选择属性
3 在属性对话框中选择 [安全] tab页
4 单击该页中 [添加] 按钮,将 "IUSR_计算机名(Internet 来宾账号)"、"IWAW_计算机名(启动IIS进程账号)" 两个账号!添加进来!
5 选择高级,将 “允许将来自父系的可继承权限传播给该对象”复选框---选中 ,需等一些时间
6 在高级选项中,作如下设定:
权限->“用在此显示的可以应用到子对象的项目替代所有子对象的权限项目”选上
审核->“用在此显示的可以应用到子对象的项目替代所有子对象的权限项目”选上
所有者->“替换子容器及对象的所有者”选上
再按“确定”,等执行完成。
7 重启计算机
环境变量path值
%JAVA_HOME%\bin;%CATALINA_HOME%\bin;D:\oracle\ora92\bin;D:\oracle\isuite\jdk\jre\bin\classic;D:\oracle\isuite\jdk\jre\bin;D:\oracle\isuite\jdk\jre\bin\client;D:\oracle\isuite\jlib;D:\oracle\isuite\bin;D:\oracle\isuite\jre\1.1.8\bin;C:\Program Files\Oracle\jre\1.3.1\bin;C:\Program Files\Oracle\jre\1.1.8\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem
因为昨天又安装了一个Oracle客户端,今天发现ODBC就无法使用了,老是提示“[Microsoft][ODBC 驱动程序管理器] 驱动程序的 SQLAllocHandle on SQL_HANDLE_ENV 失败”之类的错误信息,把红色部份调到path值的最前面,成功解决问题!
解决方法:
1 选择OracleHome 目录(c:/oracle)
2 右健单击 OracleHome 目录,选择属性
3 在属性对话框中选择 [安全] tab页
4 单击该页中 [添加] 按钮,将 "IUSR_计算机名(Internet 来宾账号)"、"IWAW_计算机名(启动IIS进程账号)" 两个账号!添加进来!
5 选择高级,将 “允许将来自父系的可继承权限传播给该对象”复选框---选中 ,需等一些时间
6 在高级选项中,作如下设定:
权限->“用在此显示的可以应用到子对象的项目替代所有子对象的权限项目”选上
审核->“用在此显示的可以应用到子对象的项目替代所有子对象的权限项目”选上
所有者->“替换子容器及对象的所有者”选上
再按“确定”,等执行完成。
7 重启计算机
追问
上边的环境变量是配置java的吧,我的环境是.net。下边的解决办法试过,好像没效果
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询