Я пытался использовать executemany для вставки значений в базу данных, но у меня это просто не сработало. Вот пример:
clist = []
clist.append("abc")
clist.append("def")
clist.append("ghi")
cursor.executemany("INSERT INTO myTable(data) values (?) ", clist)
Это дает мне следующую ошибку:
sqlite3.ProgrammingError: Incorrect number of bindings supplied. The current statement uses 1, and there are 3 supplied.
Однако, когда я меняю список, он отлично работает:
clist = ["a", "b"]
cursor.executemany("INSERT INTO myTable(data) values (?) ", clist)
Он работает так, как ожидалось! Я вижу данные в базе данных. Почему первый список не работает, а второй работает?
(PS: это всего лишь пример, а не фактический код. Для простоты я сделал небольшой тестовый пример).