Android数据库使用的是sqlite3,有时会有模糊查询的需求,比如包含“12345”的SQL查询语句为:

select * from Table where title like "%12345%"

模糊查询使用like关键字,%通配符表达0个或多个字符在当前位置,如果查询的内容刚好含有转义字符怎么办?一般是使用escape关键指定转义符,然后将查询内容的转义符做转义,但android里面有个地方需要特别注意一下:sqlite在保存有转义字符的数据到数据库时会自动做一次转,比如:
字符串
"111/222"
保存在数据库的结果是"111\/222"
"http://www.baidu.com"会保存成"http:\/\/www.baidu.com"
转义符/会被保存成/,所在在查询的时候,不能简单想当然的把/转成//,应该转成/,示例:

select * from Table where title like "%111\\//222" escape '/'

更多相关文章

  1. C#/IOS/Android通用加密解密方法
  2. Android中String资源文件的String.format方法(java)
  3. Android读写XML(下)——创建XML文档
  4. Android读写XML(下)——创建XML文档
  5. Android中Bundle的使用示例
  6. Android(安卓)多媒体数据库
  7. Android教程之MediaStore(轉)
  8. Android解析中国天气接口JSon数据,应用于天气查询!
  9. android下解析xml文件遇到中文问题

随机推荐

  1. 学习Android开发的好教程
  2. Android通过编码实现GPS开关
  3. Android P sensor对某个APP方向做旋转
  4. android 8.0、8.1 崩溃报 "Only fullscre
  5. android下对xml的解析
  6. 关于android Error:Execution failed for
  7. android 加密 解密
  8. android 开启关闭wifi服务
  9. 【Android】获取WIFI列表简单小例子
  10. 运行时报错:Invoke-customs are only supp