SQLite插入很慢?
我最近阅读了有关SQLite的文章,并认为可以尝试一下。当我插入一条记录时,它执行得很好。但是,当我插入一百时,它需要五秒钟,并且随着记录数的增加,时间也会增加。有什么事吗
我正在使用SQLite包装器(system.data.SQlite)
:
dbcon = new SQLiteConnection(connectionString);dbcon.Open();
//---INSIDE LOOP
SQLiteCommand sqlComm = new SQLiteCommand(sqlQuery, dbcon);
nRowUpdatedCount = sqlComm.ExecuteNonQuery();
//---END LOOP
dbcon.close();
回答:
将BEGIN
\ END
语句包装在您的批量插入内容周围。Sqlite已针对事务进行了优化。
dbcon = new SQLiteConnection(connectionString);dbcon.Open();
SQLiteCommand sqlComm;
sqlComm = new SQLiteCommand("begin", dbcon);
sqlComm.ExecuteNonQuery();
//---INSIDE LOOP
sqlComm = new SQLiteCommand(sqlQuery, dbcon);
nRowUpdatedCount = sqlComm.ExecuteNonQuery();
//---END LOOP
sqlComm = new SQLiteCommand("end", dbcon);
sqlComm.ExecuteNonQuery();
dbcon.close();
以上是 SQLite插入很慢? 的全部内容, 来源链接: utcz.com/qa/409891.html