•引言
概念
sqlite数据库,和其他的sql数据库不同, 我们并不需要在手机上另外安装一个数据库软件,Android系统已经集成了这个数据库;
特点
•创建数据库
Android为了让我们能够更加方便地管理数据库,专门提供了一个 sqliteOpenHelper 帮助类;
sqliteOpenHelper 是一个抽象类,这意味着如果我们想要使用它的话,就需要创建一个自己的帮助类去继承它;
sqliteOpenHelper 中有两个抽象方法,分别是 oncreate() 和 onUpgrade() ;
我们必须在自己的帮助类里面重写这两个方法,然后分别在这两个方法中去实现 创建、升级数据库 的逻辑。
sqliteOpenHelper 中还有两个非常重要的实例方法: getReadableDatabase() 和 getWritableDatabase() 。
这两个方法都可以 创建或打开 一个现有的数据库(如果数据库已存在则直接打开,否则创建一个新的数据库),
不同的是,当数据库不可写入的时候(如磁盘空间已满):
sqliteOpenHelper 中有三个构造方法可供重写,一般使用参数少一点的那个:
sqliteOpenHelper(Context context, String name, sqliteDatabase.CursorFactory factory, int version)
该构造方法中接收四个参数:
- Context context :这个没什么好说的,必须有这个才能对数据库进行操作
- String name :第二个参数是数据库名,创建数据库时使用的就是这里指定的名称
- sqliteDatabase.CursorFactory factory :第三个参数允许我们在查询数据的时候返回一个自定义的 Cursor,一般都是传入null
- int version :第四个参数表示当前数据库的版本号,可用于对数据库进行升级操作
构建出 sqliteOpenHelper 的实例之后,再调用它的 getReadableDatabase() 或 getWritableDatabase() 方法就能够创建数据库了;
•通过代码深入理解
准备工作
首先新建一个 TestDatabase 项目。