此 外 , SQLite
不 支 持 一 些 标 准 的 SQL 功 能 , 特 别 是 外 键 约 束 ( FOREIGN KEY
constrains
),嵌套 transcaction
和 RIGHT OUTER JOIN
和 FULL OUTER JOIN, 还有一些
ALTER TABLE 功能。
除了上述功能外,SQLite
是一个完整的 SQL 系统,拥有完整的触发器,交易等等。
Android
集成了 SQLite 数据库
Android 在运行时(run-time
)集成了 SQLite
,所以每个 Android 应用程序都可以使用
SQLite
数据库。对于熟悉 SQL
的开发人员来时,在 Android
开发中使用 SQLite 相当简单。
但是,由于 JDBC
会消耗太多的系统资源,所以 JDBC 对于手机这种内存受限设备来说
并不合适。因此,Android
提供了一些新的 API
来使用 SQLite 数据库,Android 开发中,
程序员需要学使用这些 API。
数据库存储在 data/<
项目文件夹 >/databases/ 下。
Android
开发中使用 SQLite 数据库
Activites
可以通过 Content Provider
或者 Service 访问一个数据库。下面会详细讲解如果创
建数据库,添加数据和查询数据库。
创建数据库
Android
不自动提供数据库。在 Android
应用程序中使用 SQLite,必须自己创建数据库,
然后创建表、索引,填充数据。Android
提供了 SQLiteOpenHelper 帮助你创建一个数据库,
你只要继承 SQLiteOpenHelper 类,就可以轻松的创建数据库。SQLiteOpenHelper 类根据开
发应用程序的需要,封装了创建和更新数据库使用的逻辑。SQLiteOpenHelper 的子类,至
少需要实现三个方法:
1
2
构造函数,调用父类 SQLiteOpenHelper 的构造函数。这个方法需要四个参数:上下文
环境(例如,一个 Activity
),数据库名字,一个可选的游标工厂(通常是 Null),一个
代表你正在使用的数据库模型版本的整数。
3
onCreate
()方法,它需要一个 SQLiteDatabase 对象作为参数,根据需要对这个对象
填充表和初始化数据。
4
onUpgrage()
方法,它需要三个参数,一个 SQLiteDatabase 对象,一个旧的版本号和
一个新的版本号,这样你就可以清楚如何把一个数据库从旧的模型转变到新的模型。
下面示例代码展示了如何继承 SQLiteOpenHelper 创建数据库:
1
public class DatabaseHelper extends SQLiteOpenHelper {
2
DatabaseHelper(Context context, String name, CursorFactory cursorFactory, int version)
3
{
4
super(context, name, cursorFactory, version);
5
}
6
7
@Override
8
public void onCreate(SQLiteDatabase db) {
9
// TODO
创建数据库后,对数据库的操作
10
}
11
12
@Override
13 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
14
// TODO
更改数据库版本的操作
找软件资料,就到一览软件文库
http://wk.yl1001.com/rj/