没有合适的资源?快使用搜索试试~ 我知道了~
android数据库共享技术
4星 · 超过85%的资源 需积分: 10 38 下载量 188 浏览量
2012-08-03
10:31:47
上传
评论 2
收藏 371KB PDF 举报
温馨提示
试读
14页
android SDK提供的小巧灵活的SQLite数据库,以便我们进行客户端数据存储。当然android的数据库是私有的,仅能提供给一个app使用,文档中不仅介绍了如何使用数据库,还讲解了如何将私有数据的的数据共享到外部,供其他程序使用。
资源推荐
资源详情
资源评论
www.moandroid.com
mo-Android 感受 Android 带给我们的新体验
Android 数据库技术
AndroidSQLite 解析
ContentResolver
ContentProvider
Android 数据存储(总结篇)
AndroidSQLite 解析
说到 SQLite,无论 C++、Java 程序员还是其他的非主流程序员,应该都听说过
它,可见其非常流行。SQLite 是轻量级的、嵌入式的、关系 型数据库,目前已
经在 iPhone、Android 等手机系统中使用,而且被其他的公司广泛使用,比如说:
Adobe,具体 SQLite 的介绍可以到其官方网站浏览。
在学习 Android SQLite 前,必须对 SQL 语句有很深入的了解(如果忘记了,利
用这次机会好好复习下)。关于数据库、表的创建等基础知识,由于篇幅有限就
不在此详细说 明,主要说明数据库的 4 大基本操作:添加(insert)、删除
(delete)、查询(query)、修改(update),这是在学习 Android SQLite 的过程中
最为关注的部分。除了这 4 大操作以外,我们还需要注意的地方就是:获取查询
结果的记录集(Recordset)。
Android SQLite 分析
等有了这些基本概念,再来学习 Android SQLite,从 Android SDK 中摘要如下:
www.moandroid.com
mo-Android 感受 Android 带给我们的新体验
首先关注到的是 SQLiteDatabase 类,在 Android SDK 中看其详细说明,其主要
接口如下:
返回值 函数原型
long insert(String table, String nullColumnHack, ContentValues values)Convenience method
forinsertingarowintothedatabase.
Int delete(String table, String whereClause, String[] whereArgs)Convenience method for
deletingrowsinthedatabase.
Cursor query(String table, String[] columns, String selection, String[] selectionArgs, String
groupBy, String having, String orderBy, String limit)Query the given table, returning a
Cursorovertheresultset.
Int update(String table, ContentValues values, String whereClause, String[]
whereArgs)Conveniencemethodforupdatingrowsinthedatabase.
看到这些是不是感到似曾相识了?不错,这就是数据库的 4 大基本操作:添加
(insert)、删除(delete)、查询(query)、修改(update)。感觉轻松很多了,再
仔细看下这些函数的参数,发现很多参数都是按照 SQL 语句定义的,
例如:select * from p_employee where id <>’9999′ order by id asc
需要额外说明 2 个数据结构: ContentValues,Cursor;
ContentValues 就相当于 C++中的 map[(String key, Integer value)],其主要
接口包括 put(),get()。再结合 insert 操作的主要目的:按照表中数据段将对
www.moandroid.com
mo-Android 感受 Android 带给我们的新体验
应的数据项写入到表中,就可以看出来 ContentValues 主要是存放表中每个表
的数据段,以及其对应的值。
Cursor 也就是前面说的:查询结果的记录集。从记录集的特征可以想到其包含
的操作应该有:MoveFirst()、MoveLast()、 MoveNext()、Move()、IsLast()、
GetColumns()等,而且它还是个抽象类[abstract class],SQLiteCursor 就是
其具体的实现。
关于 SQLiteDatabase 类,其他值得关注的函数是:Create()、execSQL()。至于
其他的函数,比如 beginTransaction(),endTransaction()等关于数据库同步
操作的函数,就只有在使用的过程中深入了解。
额外补充说明
最后值得一提的是:一个很好的辅助类 SQLiteOpenHelper,其简化了数据库的
操作。按照 Android SDK 文档中的说明,也可以通过继承此类、改写其接口的方
法来实现对数据库的操作,SQLiteOpenHelper,其主要接口如下:
仔细分析其说明,发现这个类主要是创建一个数据库,并对数据库的版本进行管
理。当在程序中调用这个类的方法 getWritableDatabase()或者
getReadableDatabase()方法的时候,如果当时没有数据库,那么 Android 系统
就 会自动创建一个数据数据库。
其他辅助说明
剩余13页未读,继续阅读
资源评论
- ygxzx2014-05-24还行,比较基础。
- 名字不重要啊2013-07-22还行 有点用
玩火的星星
- 粉丝: 0
- 资源: 8
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功