我有一个有数据库的应用程序,现在我想发布应用程序的新版本,但我的数据库添加了新的字段,我想将我的旧数据保留在数据库中,并添加带有附加字段的新数据库
我的数据库将被覆盖(我将丢失数据的副本)还是将添加新数据库
发布于 2011-12-30 15:14:13
专注于onUpgrade方法:-)
public class WIMProvider extends ContentProvider {
private static final int DATABASE_VERSION = 2;
private DatabaseHelper mOpenHelper;
// ..... code .....
private static class DatabaseHelper extends SQLiteOpenHelper {
private Context mContext;
public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
mContext = context;
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
if (oldVersion == 1) {
db.execSQL("ALTER TABLE TCategory ADD COLUMN fiDefault integer DEFAULT 0");
oldVersion++;
}
if (oldVersion == 2) {
db.execSQL("ALTER TABLE TCategory ADD COLUMN fsIcon nvarchar(50)");
oldVersion++;
}
}
}
https://stackoverflow.com/questions/8676842
复制相似问题