+ -
当前位置:首页 → 问答吧 → 读sql server里的数据报错

读sql server里的数据报错

时间:2011-05-04

来源:互联网

请问这种报错,是怎么样发生的,怎么解决:)?
  1. #-*-coding:cp936-*-
  2. import pymssql
  3. conn = pymssql.connect(host='192.168.0.114', user='worker1', password='woker1', database='database')
  4. cur = conn.cursor()

  5. cur.execute("SELECT * FROM data")
复制代码
>>>
Traceback (most recent call last):
  File "E:\学习资料\python improve\using20101203\sql server\update date cloumn for PDA\只读.py", line 6, in <module>
    cur.execute("SELECT * FROM data")# WHERE system_date='%s'"%"2011-05-03".decode('gbk'))
  File "C:\Python26\lib\site-packages\pymssql.py", line 196, in execute
    raise OperationalError, e[0]
OperationalError: SQL Server message 4004, severity 16, state 1, line 1:
不能用 DB-Library (如 ISQL)或 ODBC 3.7 或更早版本将 ntext 数据或仅使用 Unicode 排序规则的 Unicode 数据发送到客户端。

作者: wqjwftcaqr   发布时间: 2011-05-04

换成这样的句子就好用了
cur.execute(u"SELECT cast(title as text),cast(content as text) FROM newsbycharles WHERE system_date='%s'"%"2011-05-03".decode('gbk'))

作者: wqjwftcaqr   发布时间: 2011-05-05

可能跟

QUOTE:
#-*-coding:cp936-*-

有关系

作者: ning_lianjie   发布时间: 2011-05-05