我正在使用pyQt在Windows上构建GUI应用程序,该应用程序使用诸如username/password@host_ip:port/db_name
之类的连接字符串来查询Oracle数据库。现在,当我使用python3 gui.py
运行应用程序时,它可以工作,连接到主机并提取所需的信息,但是当我将其编译为exe时,它给了我臭名昭著的ORA-12638
。
我已经在Internet上搜索了解决方案,例如:如何使用pyinstaller正确打包cx_Oracle应用程序,并执行以下操作:
tnsnames.ora
但无济于事。当我使用python3 gui.py
运行该程序时,该程序运行完美,但在编译时却以某种方式中断。我想念一些简单的东西吗?
答案 0 :(得分:0)
为所有Stack x GitHub malarkey道歉,我通过将sqlnet.ora
文件的内容更改为
SQLNET.AUTHENTICATION_SERVICES = (NONE)
代替
SQLNET.AUTHENTICATION_SERVICES = (NTS)
我打开的相应问题:https://github.com/oracle/python-cx_Oracle/issues/328