小编Bry*_*yen的帖子

Room SQLite 数据库 - 删除所有 LIKE %:param%

我有一个 Room 问题,我无法在其他地方找到帮助 - 在 SQLite 中使用“LIKE”时通常用于匹配任意数量字符的“%”不适用于我们正在使用的 Room 删除查询我团队的项目。

在我们的一个 DAO 中,我们有一个在 Kotlin 中定义为字符串的删除查询:

const val DELETE_BY_RESERVATION_CODE = "DELETE FROM ${TdaRoomDatabase.TABLE_REQUESTS} WHERE uri LIKE :reservationCode"
Run Code Online (Sandbox Code Playgroud)

以及同一个 DAO 中的 deleteRequest:

@Query(DELETE_BY_RESERVATION_CODE)
fun deleteRequest(reservationCode: String)
Run Code Online (Sandbox Code Playgroud)

但是,在 ':reservationCode' 参数引用周围添加百分比符号后,我们得到以下错误:

在输入“DELETE FROM requests WHERE uri LIKE %”处没有可行的替代方案

有没有人知道在 Room DB 查询中使用“LIKE”时如何使用百分比符号?我和我的团队(不精通 SQL)希望它的行为像 SQLite,但事实并非如此!

 

sqlite android kotlin android-room

3
推荐指数
1
解决办法
1188
查看次数

标签 统计

android ×1

android-room ×1

kotlin ×1

sqlite ×1