sqlite数据库的读写确实比较慢的,用事务的形式提交:因为我们开始事务后,进行大量操作的语句都保存在内存中,当提交时才全部写入数据库,此时,数据库文件也就只用打开一次。
QSqlDatabase db = QSqlDatabase::database() ;
db.transaction();
for(int i=0;i<recordNum;i++)
{
QString szSql = QString("INSERT INTO table VALUES('%1')").arg(record);
if(!query.exec(szSql))
db.rollback();
}
db.commit();
试试