Android SQLite操作之大數(shù)據(jù)處理與同時讀寫方法
本文實例講述了Android SQLite操作之大數(shù)據(jù)處理與同時讀寫方法。分享給大家供大家參考,具體如下:
1. 批量寫入
采用事物方式,先緩存數(shù)據(jù),再批量寫入數(shù)據(jù),極大提高了速度
288條,直接inset into 耗時7秒
8640條, 批量寫入 耗時5-7秒
try {
this.myDataBase.beginTransaction(); // 手動設置開始事務
for (int i = 0; i < objArr.length; i++) {
this.myDataBase.execSQL(sql[i]);
}
this.myDataBase.setTransactionSuccessful(); // 設置事務處理成功,不設置會自動回滾不提交
iResult = true;
return iResult;
} catch (SQLException e) {
e.printStackTrace();
Log.e("log", e.getMessage());
return iResult;
} finally {
this.myDataBase.endTransaction(); // 處理完成
this.myDataBase.close();
}
2. 同時讀寫
sqlite 允許 1讀,多寫,
getReadableDatabase 為讀(底層是先打開寫入格式,再轉換成只讀模式,如果系統(tǒng)內存不足,則打開的為只讀模式)
Curse cur, cur 再對其做操作之前(比如 MovetoFirst()。。。)都只是一個指針,并沒有對數(shù)據(jù)庫進行操作。
getWritableDatabase 為寫
此兩種操作數(shù)據(jù)庫的打開模式有互斥關系,底層已加同步鎖
更多關于Android相關內容感興趣的讀者可查看本站專題:《Android操作SQLite數(shù)據(jù)庫技巧總結》、《Android操作json格式數(shù)據(jù)技巧總結》、《Android數(shù)據(jù)庫操作技巧總結》、《Android編程之activity操作技巧總結》、《Android文件操作技巧匯總》、《Android編程開發(fā)之SD卡操作方法匯總》、《Android開發(fā)入門與進階教程》、《Android資源操作技巧匯總》、《Android視圖View技巧總結》及《Android控件用法總結》
希望本文所述對大家Android程序設計有所幫助。
相關文章
Android下使用TCPDUMP實現(xiàn)數(shù)據(jù)抓包教程
這篇文章主要介紹了Android下使用TCPDUMP實現(xiàn)數(shù)據(jù)抓包教程,本文講解使用抓包工具tcpdump抓取數(shù)據(jù),然后使用Wireshark來分析數(shù)據(jù),需要的朋友可以參考下2015-02-02
Android Studio 3.0 gradle提示版本太老
這篇文章主要介紹了Android Studio 3.0 gradle提示版本太老的配置和解決方法。2017-11-11
OpenGL Shader實現(xiàn)光照發(fā)光體特效
這篇文章主要介紹了如何通過OpenGL Shader實現(xiàn)光照發(fā)光體特效,不同于陰影遮蓋,它是利用圓形繪制向內部。感興趣的小伙伴可以了解一下2022-02-02
Windows下React Native的Android環(huán)境部署及布局示例
這篇文章主要介紹了Windows下React Native的Android環(huán)境部署及布局示例,這里安卓開發(fā)IDE建議使用Android Studio,且為Windows安裝npm包管理器,需要的朋友可以參考下2016-03-03

