【发布时间】:2017-05-20 20:29:47
【问题描述】:
我编写了以下代码,使用 ODBC 驱动程序从 python 将数据插入 Ingite 缓存。在这个想要传递字符串数组列表(id_list)作为参数。 我的列表包含可变数量的元素,这就是为什么我需要将它作为参数传递给查询。
cursor = connection.cursor()
select_string= "INSERT INTO Person (_key, id, firstName, lastName, salary) VALUES (322, ? , 'abcd', 'dhsagd', 1000)"
id_list = ['test1', 'test2', 'test3', 'test4']
cursor.execute(select_string, id_list)
但是当我将字符串列表作为参数传递给查询时,我收到以下错误。
Traceback (most recent call last):
File "pythonOdbclist.py", line 13, in <module>
cursor.execute(select_string, id_list)
pyodbc.ProgrammingError: ('The SQL contains 0 parameter markers, but 4 parameters were supplied', 'HY000')
【问题讨论】: