首页 >后端开发 >Python教程 >为什么我的 SQLite3 代码中出现'提供的绑定数量不正确”错误?

为什么我的 SQLite3 代码中出现'提供的绑定数量不正确”错误?

Barbara Streisand
Barbara Streisand原创
2024-11-27 08:49:17686浏览

Why Am I Getting an

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中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn