首页 > 解决方案 > Cx_Oracle 和 Pyinstaller

问题描述

我已经使用 pyinstaller 打包了一个可执行文件,它在我的机器上运行良好。但是,当我共享可执行文件并尝试在另一台计算机上运行它并且应用程序尝试运行查询时,将返回以下错误消息:

ora-12154 tns 无法解析指定的连接标识符

我假设目标机器上的 TNSNAMES.ORA 中没有列出指定的 oracle 服务。有没有人找到一种方法将其包含在 pyinstaller 可执行文件的创建中,或者甚至是一个选项?

标签: pyinstallercx-oracle

解决方案


使用下面的代码作为我的连接字符串的一部分在给出 ora-12154 错误消息的同一台机器上工作。

导入 cx_Oracle

CONN_INFO = { 'host': 'xxx.xx.xxx.x', 'port': 12345, 'user': 'user_name', 'psw': 'your_password', 'service': 'abc.xyz.com' , }

CONN_STR = '{user}/{psw}@{host}:{port}/{service}'.format(**CONN_INFO)

连接 = cx_Oracle.connect(CONN_STR)


推荐阅读