Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android SQLite操作之大數據處理與同時讀寫方法

Android SQLite操作之大數據處理與同時讀寫方法

編輯:關於Android編程

本文實例講述了Android SQLite操作之大數據處理與同時讀寫方法。分享給大家供大家參考,具體如下:

1. 批量寫入

采用事物方式,先緩存數據,再批量寫入數據,極大提高了速度

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  為讀(底層是先打開寫入格式,再轉換成只讀模式,如果系統內存不足,則打開的為只讀模式)

Curse cur,  cur 再對其做操作之前(比如 MovetoFirst()。。。)都只是一個指針,並沒有對數據庫進行操作。

getWritableDatabase 為寫

此兩種操作數據庫的打開模式有互斥關系,底層已加同步鎖

更多關於Android相關內容感興趣的讀者可查看本站專題:《Android操作SQLite數據庫技巧總結》、《Android操作json格式數據技巧總結》、《Android數據庫操作技巧總結》、《Android編程之activity操作技巧總結》、《Android文件操作技巧匯總》、《Android編程開發之SD卡操作方法匯總》、《Android開發入門與進階教程》、《Android資源操作技巧匯總》、《Android視圖View技巧總結》及《Android控件用法總結》

希望本文所述對大家Android程序設計有所幫助。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved