源代码如下:pyodbc 4.0.13:不支持Unicode的SQL语句在中国
# coding=utf8
import pyodbc
print pyodbc.version
sql = u"""SELECT
N'我的' AS [Name]
"""
def test_success():
conn = pyodbc.connect(u'Driver={SQL Server};Server=localhost;Database=mydb;Trusted_Connection=yes;',
unicode_results=True)
cursor = conn.cursor()
cursor.execute(sql)
print "test_success::"
print "." * 80
# data = cursor.fetchall()
print "." * 80
test_success()
有错误报道:
PS C:\Users\vincent\Documents\GitHub> python C:\Users\vincent\Downloads\pyodbctest.py
4.0.13
test_success::
................................................................................
................................................................................
Exception UnicodeEncodeError: UnicodeEncodeError('ascii', u"SELECT\n N'\u6211\u7684' AS [Name]\n", 13, 15, 'ordinal not in range(128)') in <module 'threading' from 'C:\Python27\lib\threading.pyc'> ignored
有谁知道它是一个错误或我只是写错误的代码?
,这是非常奇怪的是,打印语句运行成功,但错误是从cursor.execute(sql)
这个问题还正在对[GitHub上(讨论https://github.com/mkleehammer/pyodbc/issues/ 206)。 –
这是我的问题,只是希望更多的人看到它 –