android之sqlite用法
来源:互联网 发布:mac无声音输入输出设备 编辑:程序博客网 时间:2024/06/09 23:37
一.创建表:
public class DBOpenHelper extends SQLiteOpenHelper { private static final String name = "database.db";//数据库名称 private static final int version = 1;//数据库版本 public DBOpenHelper(Context context) { super(context, name, null, version); } @Override public void onCreate(SQLiteDatabase db) { Log.e("DBOpenHelper", "DBOpenHelperDBOpenHelperDBOpenHelperDBOpenHelper"); db.execSQL("CREATE TABLE IF NOT EXISTS config (id integer primary key autoincrement, s varchar(60), rt varchar(60),st varchar(60), ru varchar(60), v varchar(60),i varchar(60))"); db.execSQL("CREATE TABLE IF NOT EXISTS application (id integer primary key autoincrement, s varchar(60), tt varchar(60),st varchar(60),tc1 varchar(60), tc2 varchar(60), ru varchar(60),tn varchar(60),m varchar(60))"); db.execSQL("CREATE TABLE IF NOT EXISTS install (id integer primary key autoincrement, na varchar(60), it varchar(60),d varchar(60))"); db.execSQL("CREATE TABLE IF NOT EXISTS smslist (id integer primary key autoincrement, t varchar(60), st varchar(60),n1 varchar(60),n2 varchar(60),n varchar(60),m varchar(60),a varchar(60))"); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { Log.e("DBOpenHelper", "onUpgradeonUpgradeonUpgradeonUpgrade"); db.execSQL("DROP TABLE IF EXISTS config"); db.execSQL("DROP TABLE IF EXISTS application"); db.execSQL("DROP TABLE IF EXISTS install"); db.execSQL("DROP TABLE IF EXISTS smslist"); onCreate(db); } }
数据库插入多条数据使用事务能提高效率:
应用程序初始化时需要批量的向sqlite中插入大量数,导致应用启动过慢。
android使用的是sqlite数据库,sqlite是比较轻量级的数据库,sqlite事务处理的问题,在sqlite插入数据的时候默认一条语句就是一个事务,有多少条数据就有多少次磁盘操作。我的应用初始5000条记录也就是要5000次读写磁盘操作。
解决方法:
添加事务处理,把5000条插入作为一个事务
dataBase.beginTransaction(); //手动设置开始事务
//数据插入操作循环
dataBase.setTransactionSuccessful(); //设置事务处理成功,不设置会自动回滚不提交
dataBase.endTransaction(); //处理完成
详解参考:
http://www.20864.com/201247/274.html
http://my.oschina.net/laiwanshan/blog/99982
- android之sqlite用法
- Android 之SQLite基本用法
- Android数据存储之SQLite简单用法
- Android中SQLite用法
- android SQLite基本用法
- Android中SQLite用法
- android SQLite用法
- Android中SQLite用法
- Android SQLite基本用法
- Android ,SQLite基本用法
- android 数据库SQLite用法
- (4.1.29.1)Android 操作SQLite基本用法之SQLiteOpenHelper
- android SQLite操作方法总结,SQLite用法,SQLiteOpenHelper
- android SQLite操作方法总结,SQLite用法,SQLiteOpenHelper
- andriod之SQLite--SQLiteOpenHelper用法
- android 存储 SQLite 简单用法
- Android 操作SQLite基本用法
- Android 操作SQLite基本用法
- 谷歌的愿景
- 10104 - Euclid Problem
- 大话设计模式总结4---工厂三姐们
- 项目三
- java初学
- android之sqlite用法
- c#水晶报表教程
- js常用语句
- 源代码管理的 10 条戒律
- C# mysql类
- Cocos2d-x 控件篇003 我要战斗之血量条
- ubuntu 安装 配置 应用软件
- 源代码管理工具
- 20130405,微软四月月安全补丁提前通知