如何在app up gradation过程中升级我的数据库?

时间:2011-09-21 12:19:24

标签: android

我正在开发一个应用程序,当用户选择应用程序升级过程时,我必须更新我的数据库。当我的应用程序迁移到新版本时,我只想进行数据库更改。 如何做这个工作请建议。

我正在开发一个应用程序已经有一些版本在市场现在我想发布我的应用程序的更新,但我没有任何信息如何做到这一点。它像普通的apk文件创建?如果它是那么我需要使用任何adb命令来测试这个apk文件?请建议.. !!!

谢谢, 拉姆。

2 个答案:

答案 0 :(得分:1)

有关SQLiteOpenHelper的信息,请参阅this doc。它提供了进行更新的功能,以及onCreates(创建db时)。

onUpgrade方法的工作方式是将db,旧版本号和新版本号传递给它,以便对其进行比较。你会做这样的事情:

public void onUpgrade(SQLiteDatabase db, int oldVer, int newVer)
{
    if (oldVer == 1 && newVer == 2)
    {
        db.exec("ALTER TABLE tbl_names RENAME TO names");
        //.....

    }


}

版本号通常作为类级别变量存储在SQLiteOpenHelper或主数据库助手中。

这将需要重新启动您的应用程序。如果您指的是用户进行应用内升级的能力,那么这可能不适合您。

答案 1 :(得分:0)

如果您使用SQLiteOpenHelper(您应该使用),请覆盖onUpgrade方法。然后,每次数据库结构发生更改时,都会更新数据库的版本号。从开发指南中读取数据存储上的this topic。另外,请查看实现此目的的NotePad示例。