Adaptive Server连接失败:使用pymssql

问题描述

我可以使用sqlcmd连接到sql Server:

sqlcmd -S xxxxxmssqlserver.database.windows.net,1433 -U xxxadministrator -P thxxxxx

但是,当我使用Python脚本时,它不起作用。

import pymssql

conn = pymssql.connect(server='xxxxxxmssqlserver.database.windows.net',user='mradministrator',password='thxxxx',database='AdventureWorks')
cursor = conn.cursor()
cursor.execute('SELECT c.CustomerID,c.CompanyName,COUNT(soh.SalesOrderID) AS OrderCount FROM SalesLT.Customer AS c LEFT OUTER JOIN SalesLT.SalesOrderHeader AS soh ON c.CustomerID = soh.CustomerID GROUP BY c.CustomerID,c.CompanyName ORDER BY OrderCount DESC;')
row = cursor.fetchone()
while row:
    print str(row[0]) + " " + str(row[1]) + " " + str(row[2])
row = cursor.fetchone()

错误消息是

[testadmin @ vic1-deployment] $ python test.py
追溯(最近一次通话):

文件“ test.py”,第3行,在
conn = pymssql.connect(server ='xxxxmssqlserver.database.windows.net',user ='xxxadministrator @ xxxxmssqlserver',password ='xxxxx',database ='Master')

pymssql.connect中的文件“ src / pymssql.pyx”,第642行,
pymssql.OperationalError:(20002,'DB-Lib错误消息20002,严重性9:\ nAdaptive Server连接失败xxxxxmssqlserver.database.windows.net)\ n')

根据以下建议进行环境检查! Environment Requirements

[testadmin@vic1 deployment]$ tsql -C
Compile-time settings (established with the "configure" script)
                            Version: freetds v0.91
             freetds.conf directory: /usr/local/freetds/etc
     MS db-lib source compatibility: yes
        Sybase binary compatibility: no
                      Thread safety: yes
                      iconv library: yes
                        TDS version: 5.0
                              iODBC: no
                           unixodbc: yes
              sspI "trusted" logins: no
                           Kerberos: no

我在连接参数中使用了以下内容

user='xxxadministrator@xxxxmssqlserver'
database='Master'

但是我不知道如何检查TDS protocol version以及是否检查FreeTDS is built with SSL support。但是,我从TDS version输出中看到5.0tsql -C

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...