Android SQLite数据库

Android SQLite 数据库操作详解

参考《Android 开发权威指南》

1 sqlite 工具
sqlite database browser
sqlite expert professional
sqlite developer
sqlitespy
 
2 SQLiteOpenHelper
onCreate(SQLiteDatabase db) // 检查数据库文件 name.db 是否存在,不存在则调用这个方法,一般是创建数据表
onUpgrade(SQLiteDatabase db, int olderVersion, int newVersion) // 比较版本号,不同则调用这个方法,一般是删除老的数据库,新建新的数据库
 
3 SimpleCursorAdapter
数据库和视图控件绑定
SimpleCursorAdapter(Context context, int layout, Cursor c, String[] from, int[] to);
 
4 不使用OpenHelper进行数据库操作,这样的方法可以在sdcard中创建数据库文件,一个缺陷是没有线程安全保障和数据库版本管理
SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase("/sdcrad/name.db", null);
db.execSQL("sql");
Cursor c = db.rawQuery("sql", new String[] {});
c.moveToFirst(); // 必须执行moveToFirst 或moveToNext 或 moveToPosition,因为指针在第0条记录之前
 
5 数据库随apk发布
namedb.db放在raw目录下
 
InputStream is = getResources().openRawResource(R.raw.namedb);
FileOutputStream fos = new FileOutputStream("/sdcard/namedb.db");
byte[] buffer = new byte[8192];
int count = 0;
while((count = is.read(buffer) >= 0){
fos.write(buffer,0,count);
}
fos.close();
is.close();
// 后面的操作和第4条就是一样的了,需要权限 WRITE_EXTERNAL_STORAGE
 
6 内存数据库
和第4条基本一样不同之处在于
SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase(null, null);

转载于:https://www.cnblogs.com/tt-0411/archive/2012/09/11/2679997.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值