使用ormlite框架进行like查询时,查询参数如果带有 ‘ 单引号,解析时将会报错。
java.sql.SQLException: Problems executing Android query: SELECT * FROM
search_history
WHEREkeyword
LIKE '%s'z%' ORDER BYupdated
DESC LIMIT 20
解决方案是将参数中的’单引号进行转义,转义成“双引号。
private fun filter(str: String): String {
return str.replace("'", "''")
}