SQLite3 中的绑定错误
尝试使用 sqlite3 执行具有多个绑定的 SQL 查询时,您可能会遇到“绑定数量不正确”提供”错误消息。当提供的绑定数量与查询中定义的参数数量不匹配时,会发生此错误。
在示例代码中:
def insert(array): connection=sqlite3.connect('images.db') cursor=connection.cursor() cnt=0 while cnt != len(array): img = array[cnt] print(array[cnt]) cursor.execute('INSERT INTO images VALUES(?)', (img)) cnt+= 1 connection.commit() connection.close()
尝试插入 74 个字符长的字符串时,您会收到错误消息,指示绑定数量和参数数量不匹配。
要解决此问题,请确保传入有效的序列作为参数。在这种情况下,img 变量周围的括号应包含一个逗号来创建元组:
cursor.execute('INSERT INTO images VALUES(?)', (img,))
或者,您可以使用列表文字:
cursor.execute('INSERT INTO images VALUES(?)', [img])
通过更正参数,您将为查询提供正确数量的绑定,解决错误并允许您成功插入数据。
以上是为什么我的 SQLite3 代码中出现'提供的绑定数量不正确”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!