我试图运行我在Ubuntu服务器上编写的脚本。
我使用pypyodbc连接到脚本中服务器上的数据库,它在Windows上运行良好。
当我试图在我的Ubuntu服务器上运行它时,我收到以下错误:
pypyodbc.Error: (u'IM002', u'[IM002] [unixODBC][Driver Manager]Data source name not found, and no default driver specified')
这是我的连接字符串:
DRIVER = "DRIVER={SQL Server};"
SERVER = "SERVER=servername;"
UID = "UID=userid;"
PWD = "PWD=password;"
DATABASE = "DATABASE=database_name;"
connection = pypyodbc.connect(DRIVER + SERVER + DATABASE + UID + PWD)
我做错了什么?有什么想法吗?
最诚挚的问候。
答案 0 :(得分:0)
您的[SQL Server]
文件中可能没有/etc/odbcinst.ini
部分。
你应该有这样的东西:
[SQL Server]
Driver=<driver so file name>
<other parameters>
部分名称必须与您在python程序中设置DRIVER
时的名称相同。您应该为此选择合适的驱动程序,如freetds。
查看http://www.unixodbc.org/doc/FreeTDS.html