最近在作android项目的时候遇到一个问题,应用程序初始化时须要批量的向sqlite中插入大量数,致使应用启动过慢。android
android使用的是sqlite数据库,sqlite是比较轻量级的数据库,在Google了以后发现,sqlite事务处理的问题,在sqlite插入数据的时候默认一条语句就是一个事务,有多少条数据就有多少次磁盘操做。个人应用初始5000条记录也就是要5000次读写磁盘操做。sql
解决方法:数据库
添加事务处理,把5000条插入做为一个事务spa
SQLiteDatabase db;sqlite
db.beginTransaction(); //手动设置开始事务事务
//数据插入操做循环it
db.setTransactionSuccessful(); //设置事务处理成功,不设置会自动回滚不提交io
db.endTransaction(); //处理完成 循环