欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android开发之Sqliteopenhelper用法实例分析

程序员文章站 2024-03-31 00:01:33
本文实例讲述了android开发之sqliteopenhelper用法。分享给大家供大家参考。具体分析如下: 如果在安卓开发中,直接使用activity中的openorc...

本文实例讲述了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程序设计有所帮助。