我正在使用python 2.7来完成一个特定的工作。我正在使用FreeTDS连接到MSSQL Server (2008)。我可以执行一些简单的select查询,但是当我尝试运行参数化查询时,我得到了一个错误:
('HY004', '[HY004] [FreeTDS][SQL Server]Invalid data type (0) (SQLBindParameter)')下面是我的问题:
query = u"UPDATE table SET column1=? WHERE column2=?"
cursor.execute(query,[param1, param2])然而,同样的代码在live上运行良好。
我在不同的论坛上浏览了这么多帖子,但它们似乎都有误导性,我真的很困惑。
我的实际问题是什么?你有什么建议?
编辑:我添加了查询。
发布于 2019-10-10 03:14:17
我知道这是一个非常老的线程,但我遇到了同样的问题,我的解决方案是对变量进行类型转换。例如:
query = u"UPDATE table SET column1=? WHERE column2=?"
cursor.execute(query,[str(param1), str(param2)])在这种情况下,参数是什么类型并不重要,因为它将被转换为字符串。
https://stackoverflow.com/questions/13311234
复制相似问题