SQL adaptation guide for SQLite 3.x / BDL programming |
SQLite is very slow when doing commits, because of the technique used to ensure data integrity (see SQLite documentation for details).
When a program executes a DML statement like INSERT, it will be automatically committed by SQLite. As result, there will be as many transactions/commits as data manipulation statements.
It takes for example about 10 seconds to insert 1000 rows on an Intel core i7 2.60GHz CPU / 5400.0 RPM HDD computer.
If a program must modify many rows in a table, execute the SQL statement within a transaction block delimited by BEGIN WORK / COMMIT WORK instructions. This will dramatically speed up the process.