cursor.execute('INSERT INTO images VALUES(?)', (img,))
没有逗号,(img)
只是一个分组表达式,而不是一个元组,因此该img
字符串被视为输入序列。如果该字符串的长度为74个字符,那么Python会将其视为74个单独的绑定值,每个绑定值长。
>>> len(img)
74
>>> len((img,))
1
如果发现它更易于阅读,则还可以使用列表文字:
cursor.execute('INSERT INTO images VALUES(?)', [img])