我编写了一个名为test.py
的Python脚本,其中包含以下内容:
import pymssql
conn = pymssql.connect(host="hostname", user="username@hostname", password="pass", database="dbname")
cursor = conn.cursor()
cursor.execute('SELECT * FROM SalesLT.Customer WHERE CustomerID=%d', 1)
row = cursor.fetchone()
while row:
print("ID=%d, Name=%s" % (row[0], row[3]))
row = cursor.fetchone()
conn.close()
我使用以下命令安装了FreeTDS:
export PYMSSQL_BUILD_WITH_BUNDLED_FREETDS=1
pip install pymssql
安装似乎有效,但我在运行程序时遇到错误:
Traceback (most recent call last):
File "test.py", line 8, in <module>
conn = pymssql.connect(host="hostname",user="username@hostname",password="pass",database="dbname")
File "pymssql.pyx", line 641, in pymssql.connect (pymssql.c:10824)
pymssql.OperationalError:(20002,&#39; DB-Lib错误消息20002,严重性9:\ nAdaptive Server连接失败\ n&#39;)
我不知道什么是错的,我们将不胜感激。如果我需要对freetds.conf
进行更改,请与我们联系。
答案 0 :(得分:1)
我正在尝试连接到Azure SQL实例
Azure需要加密连接,并且从默认.whl
文件安装或使用PYMSSQL_BUILD_WITH_BUNDLED_FREETDS=1
构建的pymssql 不支持加密连接。
有关在Ubuntu下使用带有加密连接的pymssql的说明,请参阅
How to configure pymssql with SSL support on Ubuntu 16.04 LTS?