나는 잠재적 인 일치하는 사용자의 목록을 표시하는 안드로이드 응용 프로그램을 만들고 있습니다. 사용자는 사용자를 좋아하기 위해 하나를 클릭 할 수 있으며, 나는 좋아하는 것을 모두 로컬에 저장합니다.하드 코드 부울 쿼리 룸 데이터베이스
I는 다음과 같이 일치의 목록을 얻으려면 쿼리를 작성할 수 있습니다
@Query("SELECT * FROM match WHERE liked = :liked ORDER BY match DESC LIMIT :limit")
fun getMatches(limit: Int = 6, liked: Boolean = true): Flowable<List<Match>>
나는이 잘 작동하는지 배웠다. 그러나 나는 liked
을 false로 설정하는 시나리오를 예측하지 않으므로 내 부울 조건을 하드 코딩하는 방법이 있는지 궁금합니다. 내가하려고하면 :
@Query("SELECT * FROM match WHERE liked = true ORDER BY match DESC LIMIT :limit")
내가 컴파일시에 다음과 같은 오류가 발생합니다 :
Error:(8, 0) Gradle: error: There is a problem with the query: [SQLITE_ERROR] SQL error or missing database (no such column: true)
어떻게 할 수 있습니까 하드 코드 내 쿼리 문자열이 부울?
가 나는 또한 시도 :
- 는 부울 데이터 형식이없는 작은 따옴표
@Query("SELECT * FROM match WHERE liked = 'true' ORDER BY match DESC LIMIT :limit")
감사합니다.방의 문서에서이 부분을 놓친 것 같습니다. – AdamMc331
@ AdamMc331 : 특히 최근에 변경된 후에는 Room 설명서에서 Room 설명서가 누락되었다고 주장합니다. :-(그러나 나는 그것이 당신을 위해 일하고있어서 기뻐요! – CommonsWare
글쎄, 이걸 가지고있어! : P – AdamMc331