项目要求存储2000条数据;
存储勇士7分钟,不能达到项目要求
Google发现原因是 SQLite每执行一条SQL语句就开启.关闭一次事务,浪费了大量时间
修改 insert方法为
public void insert(List<SensorBin> list) {
SQLiteDatabase mSqLiteDatabase=mSensorSQLite.getWritableDatabase();
mSqLiteDatabase.beginTransaction();//开启事务
for(SensorBin mSensorBin:list){
mSqLiteDatabase.insert(Table_Name, null,bin2ContentValues(mSensorBin));
}
mSqLiteDatabase.setTransactionSuccessful();//提交事务
mSqLiteDatabase.endTransaction();//关闭失误
mSqLiteDatabase.close();
}
修改过后保存2000条数据仅需4秒。
存储勇士7分钟,不能达到项目要求
Google发现原因是 SQLite每执行一条SQL语句就开启.关闭一次事务,浪费了大量时间
修改 insert方法为
public void insert(List<SensorBin> list) {
SQLiteDatabase mSqLiteDatabase=mSensorSQLite.getWritableDatabase();
mSqLiteDatabase.beginTransaction();//开启事务
for(SensorBin mSensorBin:list){
mSqLiteDatabase.insert(Table_Name, null,bin2ContentValues(mSensorBin));
}
mSqLiteDatabase.setTransactionSuccessful();//提交事务
mSqLiteDatabase.endTransaction();//关闭失误
mSqLiteDatabase.close();
}
修改过后保存2000条数据仅需4秒。