sqlite3.ProgrammingError: Incorrect number of bindings supplied. The current statement uses 1, and there are 7 supplied. code example
Example 1: Incorrect number of bindings supplied. The current statement uses 1, and there are 3 supplied.
#You need to pass in a sequence, comma at the end:
cursor.execute('SELECT * FROM TABLE WHERE COL = ?;', (string,))
Example 2: sqlite3.ProgrammingError: Incorrect number of bindings supplied. The current statement uses 1, and there are 7 supplied.
#Whats happening is that instead of getting the 1 datatype its looking for,
#SQLite thinks its getting multiple. To solve this pass the data through as a
#tuple, not on its own
cursor.execute('INSERT INTO images VALUES(?)', (data)) #should be
cursor.execute('INSERT INTO images VALUES(?)', (data,))
#To demonstrate, print the lengths of both of the options:
len(data)
>>>7
len(data,)
>>>1