作者:郭孝星
微博:郭孝星的新浪微博
邮箱:guoxiaoxingv@163.com
博客:http://blog.csdn.net/allenwells
Github:https://github.com/guoxiaoxing
SQLiteOpenHelper是Android中的一个用来管理数据库创建和版本的辅助类,可以通过继承这个类,实现它的一些方法来对数据进行一些操作。
一 SQliteOpenHelper功能
SQLiteOpenHelper提供两个方面的功能
- getReadableDatabase()、getWritableDatabase()可以获得SQLiteDatabase对象,通过该对象可以对数据库进行操作
- 提供了onCreate()、onUpgrade()两个回调函数,允许我们再创建和升级数据库时,进行自己的操作。
二 SQliteOpenHelper方法
所有继承了这个类的类都必须实现下面这样的一个构造方法:
public DatabaseHelper(Context context, String name, CursorFactory factory, int version)
第一个参数:Context类型,上下文对象。
第二个参数:String类型,数据库的名称
第三个参数:CursorFactory类型
第四个参数:int类型,数据库版本
下面是这个类的几个方法:
- getReadableDatabase() synchronized SQLiteDatabase 创建或打开一个数据库 可以通过这两个方法返回的SQLiteDatabase对象对数据库进行一系列的操作,如新建一个表,插入一条数据等
- getWritableDatabase() synchronized SQLiteDatabase 创建或打开一个可以读写的数据库
- onCreate(SQLiteDatabase db) abstract void 第一次创建的时候调用
- onOpen(SQLiteDatabase db) void 打开数据库
- onUpgrade(SQLiteDatabase db,int oldVersion,int newVersion) abstract void 升级数据库
- close() synchronized void 关闭所有打开的数据库对象