我试图使用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