我谨执行以下声明:
c.execute('INSERT INTO artists (name, score) VALUES("Buddy Rich", 10), ("Candido", 9), ("Charlie Byrd", 8);')
但是我没有像上面那样硬编码这些值,而是将它们放在一个变量中:
^{pr2}$如何将scores
与execute()
一起使用,其中scores
可以包含任意数量的值?在
更新
我希望能够保证,如果数据被插入到表中,即使出现程序崩溃,也会插入所有数据,或者不插入任何数据。如果在运行executemany
时出现程序崩溃,是否存在只添加部分行的风险?在
例如,这是否会导致只添加一些行:
try:
c.executemany('INSERT INTO artists (name, score) VALUES (?, ?)', scores)
except:
c.commit()
要将事务放入事务中,您应该使用游标和try块,如果发生异常,该块将回滚。在
您可以使用
executemany
:相关问题 更多 >
编程相关推荐