zoukankan      html  css  js  c++  java
  • android sqlite应用优化(资料整理)

    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();
  • 相关阅读:
    组合模式
    迭代器模式
    模板方法模式
    外观模式
    适配器模式
    运行mysql时,提示Table ‘performance_schema.session_variables’ doesn’t exist
    idea maven 打包 引用本地jar
    centos7 安装redis
    centos7 防火墙
    linux 常用命令
  • 原文地址:https://www.cnblogs.com/hubing/p/4929064.html
Copyright © 2011-2022 走看看