SQLite大数据存储

来源:互联网 发布:linux下退出vim编辑器 编辑:程序博客网 时间:2024/05/17 07:32
项目要求存储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秒。
原创粉丝点击