我正在使用 python 2.7 来完成特定的工作。我正在使用 FreeTDS 连接到 MSSQL Server (2008)。我可以进行一些简单的选择查询,但是当我尝试运行参数化查询时,出现错误:
('HY004', '[HY004] [FreeTDS][SQL Server]Invalid data type (0) (SQLBindParameter)')
这是我的查询:
query = u"UPDATE table SET column1=? WHERE column2=?"
cursor.execute(query,[param1, param2])
然而,相同的代码在现场工作正常。
我在各个论坛上浏览了很多帖子,但它们似乎都具有误导性,我真的很困惑。
我的实际问题是什么,您有什么建议?
编辑:我添加了查询。
我知道这是一个超级旧的线程,但我遇到了同样的问题,我的解决方案是对变量进行类型转换。例如:
query = u"UPDATE table SET column1=? WHERE column2=?"
cursor.execute(query,[str(param1), str(param2)])
在这种情况下,参数的类型并不重要,因为它将转换为字符串。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)