android sqlite應用最佳化(資料整理)

來源:互聯網
上載者:User

標籤:

1.  最佳化插入速度

  a.不要綁定空列   

  • 在我的程式,至少有50%的列是空值。碰到空值列,就不調用ih.bind()方法對它進行綁定,就我的程式而言,當列值為null或者空的字串是,  
  • 有將近30%的效能提升  

  b.臨時關閉sqlitedatabase的同步鎖檢查功能   

  • 我在SQLiteOpenHelper.onCreate的方法中load資料庫,在此期間,假如只有一個線程訪問databaser,那麼就不需要sqlite進行同步訪問檢查  
  • 所以,調用SQLiteDatabase.setLockingEnabled(false) ,暫時將鎖檢查關閉。這個措施可以有35%的速度提升  

 

  c.  SQLiteStatement :進行批量插入資料。

String sql = "insert into表名(對應的列) values(?)";SQLiteStatement stat = db.compileStatement(sql);db.beginTransaction();for (資料集) {  //迴圈所要插入的資料}db.setTransactionSuccessful();db.endTransaction();db.close();

 

android sqlite應用最佳化(資料整理)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.