我刚刚在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
广告资源不是正确的命令,但我无法弄清楚是什么
答案 0 :(得分:0)
SQL语句不正确ALTER TABLE inventory
。您没有在表格中指定要更改的内容。
例如:ALTER TABLE inventory ADD name TEXT
表示name
类型中有一个新列TEXT
将添加到表inventory
中。
虽然您的案例是约束更改,但无法更改约束。 但是你可以放弃约束并再次添加它。
请在此处阅读答案: How to Alter Constraint