【发布时间】:2017-10-22 20:39:26
【问题描述】:
我有一个简单的 python 脚本,它导入 cx_Oracle,然后进行 sql 查询。从 python 运行时一切正常。我的电脑上安装了 Oracle SQL 开发者,它是免费的。
当我使用 'pyinstaller main.py' 编译程序时,一切都可以正常编译,我也可以开始解决问题。但是一旦从该程序进行 SQL 查询,就会发生以下运行时错误:
cx_Oracle.InterfaceError: 无法获取 Oracle 环境句柄
我尝试了以下方法:
- 将所有 .dll 和 .jar 文件从 oracle 移动到构建目录,如下所示:https://sourceforge.net/p/cx-oracle/mailman/cx-oracle-users/thread/g7nbks$tl$1@ger.gmane.org/
- 使用 pyinstaller main.py --exclude oci.dll 选项从 pyinstaller 排除 oci.dll
- 检查我的 ORACLE_HOME 是否正确设置为: - C:\Users\nyname\AppData\Local\Continuum\Anaconda3\Lib\site-packages\instantclient_12_1
这些都没有用。
非常感谢任何我能做的其他建议。
【问题讨论】:
标签: python pyinstaller cx-oracle