最近在作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(); //處理完成 循環