Android(安卓)Sqlite数据库转义字符模糊查询
16lz
2021-12-27
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 '/'
更多相关文章
- C#/IOS/Android通用加密解密方法
- Android中String资源文件的String.format方法(java)
- Android读写XML(下)——创建XML文档
- Android读写XML(下)——创建XML文档
- Android中Bundle的使用示例
- Android(安卓)多媒体数据库
- Android教程之MediaStore(轉)
- Android解析中国天气接口JSon数据,应用于天气查询!
- android下解析xml文件遇到中文问题