【发布时间】:2011-11-08 13:55:38
【问题描述】:
我在 android 市场上发布了一个应用程序,现在我想制作一个带有数据库更改的新版本。问题是,我已经发布的应用版本有这个 onUpgrade 方法:
@Override
public void onUpgrade(SQLiteDatabase _db, int _oldVersion, int _newVersion) {
Log.w("TaskDBAdapter", "Upgrading from version " +
_oldVersion + " to " +
_newVersion + ", which will destroy all old data");
// Drop the old table.
_db.execSQL("DROP TABLE IF EXISTS " + DATABASE_TABLE_1);
_db.execSQL("DROP TABLE IF EXISTS " + DATABASE_TABLE_2);
// Create a new one.
onCreate(_db);
}
因为我想添加一个新表,所以我知道我必须在此处进行一些更改,以保留我已经使用先前版本创建的表中的数据。那么从旧的或新的 .apk 将调用什么 onUpgrade 方法。我可以保留表格中的数据吗?请告诉我。 提前谢谢你。
【问题讨论】:
标签: android database methods sqlite