sqlite 开启事务可以提高效率,sqlite提高效率
最近做一个东西,用到sqlite 插入100多条数据 大概要1700ms 大概1.7秒。我后来开起来事务。直接才161ms 效率提高十倍
<span > public void insertPO(List<Poetry> poetryList) {
SQLiteDatabase database = null;
try {
database = helper.getWritableDatabase();
<span >database.beginTransaction();</span>
for (int i = 0; i < poetryList.size(); i++) {
Poetry poetry = poetryList.get(i);
ContentValues cv = new ContentValues();
cv.put("poetryid", poetry.getPoetryid());
cv.put("title", poetry.getTitle());
cv.put("kindid", poetry.getKindid());
cv.put("typeid", poetry.getTypeid());
cv.put("writerid", poetry.getWriterid());
cv.put("content", poetry.getContent());
if (!helper.isExist("Poetry", "poetryid", poetry.getPoetryid(),
database)) {
database.insert("Poetry", null, cv);
}
}
<span >database.setTransactionSuccessful();</span>
} catch (Exception e) {
e.printStackTrace();
} finally {
if (database != null) {
<span >database.endTransaction();</span>
database.close();
}
}
}</span>
本站文章为和通数据库网友分享或者投稿,欢迎任何形式的转载,但请务必注明出处.
同时文章内容如有侵犯了您的权益,请联系QQ:970679559,我们会在尽快处理。