相关疑难解决方法(0)

Sqlite - 关于降级

最近我更新了我的安卓游戏,编辑sqlite数据库在我的表中添加新字段,更新后,我收到4个崩溃报告(其中3个来自同一设备,三星Galaxy S4)

android.database.sqlite.SQLiteException:无法将android.database.sqlite.SQLiteOpenHelper.onDowngrade(SQLiteOpenHelper.java:361)中的数据库从版本2降级为1,位于android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java: 255)在android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:164)

我真的无法理解可能是什么原因,甚至可能开始降级数据库,而实际上需要在我的上一个数据库中进行升级.

在更新期间,我显然将DATABASE_VERSION值从1增加到2

我没有凌驾于降级方法,我的onUpgrade看起来如下:

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)
{
    updateToVersion2(db, oldVersion, newVersion);
}

private void updateToVersion2(SQLiteDatabase db, int oldVersion, int newVersion)
{
    if (oldVersion <= 1)
    {
        ContentValues cv1 = new ContentValues();
        cv1.put(FIELD_WORLD_ID, 6);
        cv1.put(FIELD_MAX_UNLOCKED, 1);
        db.insert(TABLE_LEVELS, null, cv1);
    }
}
Run Code Online (Sandbox Code Playgroud)

谢谢.

java database sqlite android

6
推荐指数
1
解决办法
4407
查看次数

标签 统计

android ×1

database ×1

java ×1

sqlite ×1