3
我已正确安装和配置FreeTDS。因为这追加到年底我的freetds.conf文件:无法使用pymssql连接到mssql db
[myserver]
host = myserver
port = 1433
tds version = 7.0
,我还可以运行以下命令,给了我一个SQL提示:
tsql -S myserver -U username
我的Python脚本是极小的,企图成功连接到数据库:
#! /path/to/python/bins
import pymsql
conn = pymssql.connect(host='myserver', user='username', password='password', database='database', as_dict=True)
conn.close()
但是当我运行它,我收到以下错误:
Traceback (most recent call last):
File "./test.py", line 5, in <module>
conn = pymssql.connect(host='myserver', user='username', password='password', database='database', as_dict=True)
File "pymssql.pyx", line 456, in pymssql.connect (pymssql.c:6017)
pymssql.InterfaceError: Connection to the database failed for an unknown reason.
这是什么原因造成的?从我搜索的内容来看,遇到这个问题的大多数人都有freetds.conf文件配置不正确;不过,我可以成功连接(使用tsql)。有谁知道我做错了什么,或者我该如何解决这个问题?
它看起来是不是想我指定的端口上的连接freetds.conf文件:'net.c:210:连接到端口4000(TDS版本5.0)' –
EGr
我想通过一种方式获得连接(尽管我现在正在收到其他错误);我只需要在python代码中指定端口。所以我有'host = myserver'的地方,我会有'host = myserver:port'。虽然我所有的问题都没有解决,但我所问的是。谢谢! – EGr
我也应该注意到我必须创建下面的env变量:'TDSVER = 8.0' – EGr