如何禁用Android Room管理架构?

时间:2018-01-03 18:16:28

标签: android android-room

我是Android Room的新手。我想用它来读写我的Sqlite数据库。我不希望它管理模式(创建/迁移表)。

首先,我还没有完全在Android Room上销售,所以我不想通过管理我的架构来承诺它。

其次,我更喜欢完全控制架构。

我目前在启动应用时遇到了Room异常。我认为这是因为Android Room遇到我现有的架构。

java.lang.IllegalStateException: Room cannot verify the data integrity. Looks like you've changed schema but forgot to update the version number. You can simply fix this by increasing the version number.

如何阻止Android Room创建/迁移表?

2 个答案:

答案 0 :(得分:1)

如果您更改数据库架构,例如无论是实体还是其他,你必须在这里增加版本:

 @Database(entities = {Person.class, Product.class}, version = 2)

就是这样。

另一方面,如果此问题困扰您在开发模式中,只需卸载/安装应用程序,错误就会消失。或者只是从设置中清除应用的应用数据

在其他情况下,您必须管理迁移。

希望有所帮助。

答案 1 :(得分:0)

我认为你想停止自动生成数据库shema:

@Database(entities = {Person.class, Product.class}, version = 2, exportShema = false)