0

我正在使用 Python 3.5.1 和 Anaconda 包 2.4.0 并尝试连接到本地 SQL Server (2008 R2)

所以做接下来的事情:

import pypyodbc
connection_string =pypyodbc.connect('Driver={SQL Server};Server=PC\MSSQLSERVER,1433;Database=localbase;Uid=name;Pwd=pass')
connection_string=connection_string.decode(encodind='utf-8',errors='replace')

完成所有操作后,收到错误:

'utf-32-le' codec can't decode bytes in position 0-1: truncated data

为什么会这样,我应该怎么做才能避免它并正确运行连接?

4

1 回答 1

0

您似乎误解了“连接字符串”是什么。它是您传递给方法的文本字符串.connect,而不是从方法返回的内容.connect。(返回的是一个connection对象。)

所以,你需要做更多这样的事情:

import pypyodbc
connection_string = "DRIVER={SQL Server};SERVER= ...(and so on)..."
conn = pypyodbc.connect(connection_string)
crsr = conn.cursor()
crsr.execute("SELECT stuff FROM tablename")
# etc.
于 2016-07-11T19:28:57.273 回答