每次增量都会调用 onUpgrade 吗?
Will onUpgrade be called for each increment?
假设我的应用程序数据库版本 1 运行 在某些用户设备上有一段时间了。
同时我将数据库版本增加到 2,然后增加到 3 并像那样处理 onUpgrade :
if (oldVersion == 1 && newVersion == 2) {
db.execSQL(String.format("ALTER TABLE ... ADD .. text", ));
} else if (oldVersion == 2 && newVersion == 3) {
db.execSQL(String.format("ALTER TABLE ... ADD .. text", ));
}
当那个用户升级我的应用程序时,这两个块都会被执行吗?
我猜你可以使用:
if (oldVersion == 1) {
do stuff;
oldVersion = oldVersion + 1;
}
if (oldVersion == 2) {
do stuff;
oldVersion = oldVersion + 1;
}
或使用开关。
假设我的应用程序数据库版本 1 运行 在某些用户设备上有一段时间了。
同时我将数据库版本增加到 2,然后增加到 3 并像那样处理 onUpgrade :
if (oldVersion == 1 && newVersion == 2) {
db.execSQL(String.format("ALTER TABLE ... ADD .. text", ));
} else if (oldVersion == 2 && newVersion == 3) {
db.execSQL(String.format("ALTER TABLE ... ADD .. text", ));
}
当那个用户升级我的应用程序时,这两个块都会被执行吗?
我猜你可以使用:
if (oldVersion == 1) {
do stuff;
oldVersion = oldVersion + 1;
}
if (oldVersion == 2) {
do stuff;
oldVersion = oldVersion + 1;
}
或使用开关。