我的应用有两个独立的表,一个叫做用户(Users),另一个叫做密码(Passwords)。
用户:
@Entity(tableName = "users")
public class Users {
// some setters and getters here
}
密码:
@Entity(tableName = "passwords")
public class Passwords {
// some setters and getters here
}
这就是我访问数据库的方式:
usersdb = Room.databaseBuilder(this, Users.class,"mymaindb")
.allowMainThreadQueries()
.build();
// Then later in some other activity when I need to use passwords table
passwords = Room.databaseBuilder(this, passwords.class,"mymaindb")
.allowMainThreadQueries()
.build();
我遇到的问题是,在进行全新安装后,访问密码时无法访问用户,反之亦然。我收到以下错误信息:
Caused by: java.lang.IllegalStateException: Room 无法验证数据完整性。看起来您已更改了模式但忘记更新版本号。您可以通过增加版本号来轻松解决此问题。
但是,当我尝试使用密码_db和users_db这样的两个单独的数据库而不是mymaindb时,它完全正常工作。
那么,有没有办法在一个数据库下拥有多个表?如果有,那么我做错了什么?提前感谢您的帮助!