Oracle ODBC:SQL_HANDLE_ENV 上的驱动程序的 SQLAllocHandle 失败
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/13626024/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Oracle ODBC : Driver's SQLAllocHandle on SQL_HANDLE_ENV failed
提问by Hayk Mamikonyan
I have message Oracle ODBC : Driver's SQLAllocHandle on SQL_HANDLE_ENV failed when try to open oracle connection in excel. I'm working in virtual machine via citrix. Could you please give tips why it is appear and how avoid problem ?
我收到消息 Oracle ODBC : Driver's SQLAllocHandle on SQL_HANDLE_ENV 尝试在 Excel 中打开 oracle 连接时失败。我正在通过 citrix 在虚拟机中工作。您能否提供提示为什么会出现以及如何避免问题?
回答by sarathmojo
The problem appears to be a permission issue during the installation of both Oracle 9i and 10G.
该问题似乎是在安装 Oracle 9i 和 10G 期间的权限问题。
If you navigate Oracle home you will find that the directory has different permissions then the root of the tree. In the case of 10G the path is C:Oracleproduct10.1.0Client_1. Open the properties for the Client_X directory, and you will see that "Authenticated Users" should have Read and Execute, List Folder Contents, and Read. To fix the problem, do the following.... -Select Authenticated Users -Uncheck Read and Execute -Press Apply -Check Read and Execute -Press Apply
如果您导航 Oracle 主目录,您会发现该目录与树的根目录具有不同的权限。在 10G 的情况下,路径是 C:Oracleproduct10.1.0Client_1。打开 Client_X 目录的属性,您将看到“经过身份验证的用户”应具有读取和执行、列出文件夹内容和读取。要解决此问题,请执行以下操作.... - 选择经过身份验证的用户 - 取消选中读取和执行 - 按应用 - 选中读取和执行 - 按应用
回答by sarathmojo
One item that can cause this error is not having the ORACLE_HOME bin directory in your Windows OS path. Open a command prompt and type either PATH or SET to see if the directory is included. Adjust as required.
可能导致此错误的一项是您的 Windows 操作系统路径中没有 ORACLE_HOME bin 目录。打开命令提示符并键入 PATH 或 SET 以查看是否包含该目录。根据需要进行调整。
回答by Zaheer Nazir
Do the following to resolve the issue:
执行以下操作来解决问题:
- Select Administration Tools , Local Security Setting and Local Policy.
- Then select "User Rights Assignment"
- Double click on "Create Global Objects"
- Select Add User or Group.
- Make sure Object Types Group Box is checked.
- Select Locations and highlight the name of the server you are working on (Not the Domain).
- Enter "Remote Desktop Users" or "Everyone" (without the quotes) into the Object Names Box.
- Select OK.
- Add the same users to the group "Power User".
- If this does not work, after step 8 a reboot may be required.
- 选择管理工具、本地安全设置和本地策略。
- 然后选择“用户权限分配”
- 双击“创建全局对象”
- 选择添加用户或组。
- 确保选中对象类型组框。
- 选择位置并突出显示您正在使用的服务器的名称(不是域)。
- 在对象名称框中输入“远程桌面用户”或“所有人”(不带引号)。
- 选择确定。
- 将相同的用户添加到“Power User”组。
- 如果这不起作用,则在步骤 8 之后可能需要重新启动。