我試圖使用executemany插入到數據庫中的值,但它只是不會爲我工作。下面是一個示例:我不能讓Python的executemany sqlite3正常工作
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:這只是一個示例,而不是實際的代碼,爲簡單起見,我做了一個小測試用例)。
他們都是同樣的表格。我對打字錯誤很不好。現在解決它的問題。它是一張簡單的桌子,裏面有一個領域。 – brainydexter 2011-03-16 21:39:26
是啊...我仍然回答你的兩個問題,雖然... – marr75 2011-03-16 21:42:42
你可以請在這裏再次發表評論,關於第二個clist。我認爲,發佈了他的答案的人刪除了它,並且隨之消失了。 – brainydexter 2011-03-17 02:51:38