带有参数的Android Room @Delete


问题内容

我知道我不能DELETE在查询中使用(顺便说一句很可惜),我会收到以下错误:

<i>Error:error: Observable query return type (LiveData, Flowable etc) can only be used with SELECT queries that directly or indirectly (via @Relation, for example) access at least one table.</i>

但是我不能使用@Delete(WHERE... xxx) 那么,如何通过参数删除特定行?


问题答案:

房间的美在于,我们玩的是物体。根据要求,您可以使用kotlin:

@Delete
fun delete(model: LanguageModel)

对于Java:

@Delete
void delete(LanguageModel model)

它将删除存储在数据库中的具有相同值的确切对象。LanguageModel是我的模型类,它可以完美运行。