python 列表输入sql_Python将元组列表插入SQLi中的一列

本文探讨了如何使用Python将包含多个元组的列表批量插入到SQLite数据库中,并保持唯一性约束,同时避免出现绑定数量不匹配的错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我研究过类似的链接,但还是搞不懂。大多数其他链接都试图插入到多行或多列中,但我需要一列元组的列表。在word_in_python = cat

listOfTuples = [('word1', 12), ('word2', 14), ('word3', 4), ('word5', 23)]

这是我的代码:

^{pr2}$

我需要INSERT或IGNORE,因为word列是一个惟一的列,所以不应该在db中输入重复的单词。在

我试着换成:c.execute("INSERT OR IGNORE INTO saved_words (word, data) VALUES (?, ?)", (word_in_python, (listOfTuples, )))

c.executemany("INSERT OR IGNORE INTO saved_words (word, data) VALUES (?, ?)", (word_in_python, [listOfTuples]))

for each in listOfTuples:

c.executemany("INSERT OR IGNORE INTO saved_words (word, data) VALUES (?, ?)", (word_in_python, (each[0], each[1]) ))

这些都不管用。在

我通常遇到的错误是:Incorrect number of bindings supplied. The current statement uses 2, and there are 5 supplied.

我也被这个错误搞糊涂了。我明白吗?, ?) 在我的execute行中意味着我要输入2个绑定。我的元组列表中有10个元组,所以我不确定提供的5个绑定来自何处。在

words也保存为blou类型的数据。我想这是最好的插入列表。在

编辑

我想要的是python(cat)中的单词“_”在一列中,而在下一列的listOfTuples中,这一切都在一行中。在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值