有数据库MS SQL。它有一个存储过程,用于显示表的全部内容。当您尝试从python调用此过程时,会出现错误:
UnicodeDecodeError:utf8编解码器无法解码位置0中的字节0xc2:无效的延续字节。
它连接底座本身是正常的,故障只与存储过程有关。使用库pyodbc
处理数据库。
import pyodbc
conn = pyodbc.connect("DRIVER{FreeTDS};SERVER=sql_srv_name;UID=login;PWD=pass;DATABASE=web_db")
curs = conn.cursor()
result = curs.execute("EXEC proc_name")
print result.fetchall()
我还没有尝试过,但您想将返回的每一行转换为ascii,类似
for s in result.fetchall():
t = s.encode("ascii", "replace")
print t