尝试执行插入来自列表的项目:`
item = u'Sunil Goyal'
c.execute('''INSERT INTO bpersons(person_name)VALUES(?)''',item)`
很简单,但它返回
提供的绑定数量不正确。当前语句使用1,并且提供了11个。
显然,不是将项目作为一个元素阅读,而是阅读字符。返回此列表的早期代码没有问题:
>>> if meta[7]:#bcoz list could be empty also
for item in meta[7]:
print item
Sunil Goyal
Rehan Yar Khan
汗
Kae Capital
Ashish Shankar
Karthik Reddy
Feroze Azeez
LEN(甲基[7]) 7
知道我哪里错了吗?
答案 0 :(得分:0)
insert
正在寻找一个可迭代的(documentation)并且这成功,因为你的unicode字符串是一个可迭代的,但你应该把它放在一个元组或列表中,以便sqlite3正确处理。
c.execute('''INSERT INTO bpersons(person_name) VALUES (?)''',(item,))`