我围绕pymssql编写了一个包装器,以连接到我工作的数据库。我遇到了unicode解码/编码错误,并且试图从源头上阻止它们。

当我指定charset='latin1' or'iso-8859-1'`时,连接失败,并显示以下错误:

  File "pymssql.pyx", line 549, in pymssql.connect (pymssql.c:7672)
    raise OperationalError(e[0])
pymssql.OperationalError: (20017, 'DB-Lib error message 20017, severity 9:\nUnexpected EOF from the server\nDB-Lib error message 20002, severity 9:\nAdaptive Server connection failed\n')


DB编码看起来是“ latin1”:

SELECT SERVERPROPERTY('Collation')


退货

SQL_Latin1_General_CP1_CI_AS


我认为与Python的'latin1'相同。

我这样做正确吗?我是否选择了错误的编码(即latin1iso-8859-1

最佳答案

您输入的内容似乎很挑剔。

考虑输入charset="ISO-8859-1"

关于python - pymssql:在数据库连接中设置字符集选项会导致连接失败,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17953383/

10-10 19:07