获取房间数据库中所有更新值的列表



Room数据库中是否有方法检索已更新的数据列表?

示例:假设我有一个名为Note的表,并且有一个类似于以下内容的更新查询:

@Query("UPDATE note SET archive = 1 WHERE date > '20200101'")
abstract suspend fun updateNote()

如何获取已更新的笔记列表?

我做了一些研究,但找不到任何可靠的链接或文章。感谢您的帮助。干杯

编辑:

我想我可以使用distinctUntilChanged,但不能100%确定。

我认为@Transaction方法可以解决您的问题,比如:

@Query("SELECT * FROM note WHERE date > '20200101'")
suspend fun getFilteredNotes(): List<Note>
@Query("UPDATE note SET archive = 1 WHERE date > '20200101'")
suspend fun updateNote()
@Transaction
suspend fun getNotesAndUpdate(): List<Note> {
val filteredNotes = getFilteredNotes()
updateNote()
return filteredNotes
}

最新更新