Sqlite 模糊查询 区分大小写

本文详细介绍了在SQLite数据库中如何使用PRAGMA指令来控制LIKE操作符的大小写敏感性,这对于精确检索非常重要。同时,文章提供了特殊字符转义的方法,确保了搜索内容的准确性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PRAGMA case_sensitive_like=ON;
PRAGMA case_sensitive_like=OFF;
select * from  test  where  destid = 12345   and content like "%ab%" ;
String whereClause = "id= ? and age=?  and ( country like '%" + str + "%' or name like '%" + str + "%')"

必须先设置PRAGMA case_sensitive_like=ON; 才会开启 模糊查询的区分大小写(模糊查询默认不区分大小写)
https://stackoverflow.com/questions/15480319/case-sensitive-and-insensitive-like-in-sqlite

https://blog.youkuaiyun.com/tietao/article/details/6890350

搜索内容中含有特殊字符时,转义

public static String sqliteEscape(String keyWord){
        keyWord = keyWord.replace("/", "//");
        keyWord = keyWord.replace("'", "''");
        keyWord = keyWord.replace("[", "/[");
        keyWord = keyWord.replace("]", "/]");
        keyWord = keyWord.replace("%", "/%");
        keyWord = keyWord.replace("&","/&");
        keyWord = keyWord.replace("_", "/_");
        keyWord = keyWord.replace("(", "/(");
        keyWord = keyWord.replace(")", "/)");
        return keyWord;
    }

https://blog.youkuaiyun.com/gfdhjf/article/details/86621384
https://blog.youkuaiyun.com/fantianheyey/article/details/9199235
https://blog.youkuaiyun.com/shareye1992/article/details/51699763#commentsedit
https://blog.youkuaiyun.com/it__sky/article/details/82740512
https://blog.youkuaiyun.com/ameyume/article/details/8007149
https://www.cnblogs.com/jintianhu/archive/2011/09/23/2186664.html

https://www.jianshu.com/p/85b9cefd8d56 Android目前流行三方数据库ORM分析及对比
https://blog.youkuaiyun.com/qq_22703355/article/details/80804876 Android 数据库框架总结,总有一个适合你!
https://blog.youkuaiyun.com/tangjiean/article/details/51729371 okhttp连接池复用机制

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值