迁移android

时间:2018-05-21 01:31:41

标签: java android

我刚刚在Android中更新了我的数据库,无法获得要迁移的应用程序。

我所做的更改是我将{autoGenerate = true}添加到@PrimaryKey

@PrimaryKey(autoGenerate = true)
private int id;

我尝试了很多东西,但我无法让迁移工作。

问题出现在我的AppDatabase类中,其中插入了以下代码:

public static final Migration MIGRATION_1_2 = new Migration(1, 2) {
    @Override
    public void migrate(SupportSQLiteDatabase database) {
        database.execSQL("ALTER TABLE inventory");
    }
};

ALTER TABLE广告资源不是正确的命令,但我无法弄清楚是什么

1 个答案:

答案 0 :(得分:0)

SQL语句不正确ALTER TABLE inventory。您没有在表格中指定要更改的内容。

例如:ALTER TABLE inventory ADD name TEXT表示name类型中有一个新列TEXT将添加到表inventory中。

虽然您的案例是约束更改,但无法更改约束。 但是你可以放弃约束并再次添加它。

请在此处阅读答案: How to Alter Constraint