Android 房间持久性库(更新问题)
问题:大家好,我在Room持久性库中遇到了一个问题。我能够第一次和第二次更新数据库中实体的已创建行,但当我第三次查询数据库以更新同一行时,它不会得到更新 使用的组件:Kotlin、Android架构(Room Persistence Library、ViewModel)和Dagger2 使用的版本:1.1.1 设备/Android版本复制于:所有设备Android 房间持久性库(更新问题),android,kotlin,android-room,Android,Kotlin,Android Room,问题:大家好,我在Room持久性库中遇到了一个问题。我能够第一次和第二次更新数据库中实体的已创建行,但当我第三次查询数据库以更新同一行时,它不会得到更新 使用的组件:Kotlin、Android架构(Room Persistence Library、ViewModel)和Dagger2 使用的版本:1.1.1 设备/Android版本复制于:所有设备 源代码位于:我查看了您的代码 首先,在测试实体中使用@PrimaryKey(autoGenerate=true) 尽管您声明了一个id为0的测试,
源代码位于:我查看了您的代码 首先,在测试实体中使用@PrimaryKey(autoGenerate=true) 尽管您声明了一个id为0的测试,但注释为您生成了id。例如,第一个项目的id为1,第二个项目的id为2,以此类推 第二,看看您的TestDao
@Query("SELECT * FROM ${Test.TABLE_NAME}")
fun getTest(): LiveData<Test>
@Query(“从${Test.TABLE_NAME}中选择*)
fun getTest():LiveData
您只使用一个测试来获取所有项目,您将只获取所有测试中的第一个项目
由于这两个问题,您的第二次保存创建了一个id为2的测试,并且您的getTest()总是返回id为1的测试,这会将edittext更改回原来的状态 提供更多信息。Alien,我正在更新实体行参数值。第一次和第二次,它的值正在更新,但第二次之后,它既不更新已创建的行值,也不为该实体创建新行。您可以在此处发布代码片段吗?@SamirBhatt请在此链接查找源代码:@Alien您可以在此链接获取更多信息和源代码: