使用Sqlite保存数据十分方便。
1、继承SQLiteOpenHelper类(TestSqliteOpenHelper),必须重写onCreate和onUpgrade方法,可选的可以重写onOpen、onDowngrade、onConfigure等回调方法。
其中执行顺序是onConfigure ---> onCreate/onUpgrade/onDowngrade ---> onOpen
其中onUpgrade和onDowngrade两个回调方法与调用该SQLiteOpenHelper构造函数时传递的参数version相关。如果新的version比上一次的version大,则调用onUpgrade方法;如果小,则调用onDowngrade方法;不变则两个都不调用。
每次打开数据库的时候都会调用onOpen方法。
2、可以另外创建一个类,用于调用SQLiteOpenHelper和SQLiteDatabase类,并向外部提供操作数据库的接口。
首先new一个SQLiteOpenHelper的子类(TestSqliteOpenHelper)。调用SQLiteOpenHelpre的getReadableDatabase或getWritableDatabase方法,获取SQLiteDatabase对象,使用SQLiteDatabase对象对数据库进行操作。
需要注意的是,SQLiteDatabase对象的isReadOnly方法,并不表示是不是通过getReadableDatabase获取数据库对象。而且我在代码中通过getReadableDatabase获取可读的数据库对象,然后调用这个数据库对象的insert方法,依然可以插入数据。