Android开发之Sqliteopenhelper用法实例分析
本文实例讲述了Android开发之Sqliteopenhelper用法。分享给大家供大家参考。具体分析如下:
如果在安卓开发中,直接使用Activity中的openOrCreateDatabase(name, mode, factory)会有一系列跟随的问题。比如说数据库升级、更新等。
最好是使用其封装版本:SQLiteOpenHelper
继承和扩展SQLiteOpenHelper类主要做的工作就是重写以下两个 方法。
onCreate(SQLiteDatabase db) : 当数据库被首次创建时执行该方法,一般将创建表等初始化操作在该方法中执行。
onUpgrade(SQLiteDatabse dv, int oldVersion,int new Version):当打开数据库时传入的版本号与当前的版本号不同时会调用该方法。
除了上述两个必须要实现的方法外,还可以选择性地实现onOpen 方法,该方法会在每次打开数据库时被调用。
自己在业务中重写这些函数,然后通过helper的getWritableDatabase和getReadableDatabase来得到想要操作的数据库。再进行操作就可以了。
另外,判断一个表在sqlite中是否存在,可以使用如下方法:
String sql = "SELECT count(*) FROM sqlite_master WHERE type='table' AND name='items'";
Cursor cur = db.rawQuery(sql, null);
int count = -1;
while (cur.moveToNext()) {
count = cur.getInt(0);
}
if (count <= 0) {
// 表不存在
} else {
}
希望本文所述对大家的Android程序设计有所帮助。
您可能感兴趣的文章:基于Android SQLiteOpenHelper && CRUD 的使用android 中 SQLiteOpenHelper的封装使用详解
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341