将插入组合到一个事务Python SQLite3中

Eri*_*ric 8 python sqlite transactions insert

我试图在SQLite3上输入1000行,但是插入时间太长了.我知道如果将插入组合成一个事务,速度会大大提高.但是,我似乎无法让SQlite3跳过检查文件是否写在硬盘上.

这是一个样本:

if repeat != 'y':
    c.execute('INSERT INTO Hand (number, word) VALUES (null, ?)', [wordin[wordnum]])
    print wordin[wordnum]

data.commit()
Run Code Online (Sandbox Code Playgroud)

这就是我在开始时所拥有的.

data = connect('databasenew')
data.isolation_level = None
c = data.cursor()  
c.execute('begin')
Run Code Online (Sandbox Code Playgroud)

但是,它似乎没有什么区别.提高插入速度的方法将非常受欢迎.

dug*_*res 0

您可以使用executemany,请参阅这个SO问题:python sqlite Question - Insert method