我正在尝试编译一个使用pyodbc的python程序。 我有以下python脚本:
import pyodbc
conn = pyodbc.connect(r'DRIVER={SQL Server};SERVER=server-name;UID=user;PWD=password;DATABASE=database-name;')
print "no errors"
当我使用python启动脚本时,我按预期得到no errors
。
但是当我编译脚本(我尝试使用py2exe,cx-freeze,pyinstaller和nuitka)并启动它时,我收到以下错误:
SQL Server does not exists or access denied
服务器不是问题,因为未编译的脚本运行正常。 我相信在编译过程中不包含一些文件,但我不知道从哪里开始搜索。 py2exe脚本是:
from distutils.core import setup
import py2exe
setup(options = {
'py2exe': {
'includes': 'decimal',
},
},
console=['main.py'])
我使用python setup.py py2exe
我也在使用python 2.7
如何修复此错误,我应该从哪里开始查看?
提前谢谢。
更新: 在尝试使用nuitka和pyinstaller并获得相同的错误后,似乎问题发生在编译时,或者在我运行已编译的应用程序时。
是否有一些dll我可以重新下载以使其正常工作或某些日志来查看问题?
注意:我已经重新安装了我的python发行版。
更新2:
我有一个Anaconda安装(32位python 2.7)我在两天前从here重新安装了最后一个版本。
我从命令提示符运行.exe,当前工作目录指向可执行文件所在的文件夹。
我使用与编译它相同的命令提示符运行它(这意味着我猜的是同一个用户)。
提前谢谢。