如何在我的iOS应用程序的sqlite中使sql查询不区分大小写

lak*_*esh 1 sql sqlite ios

我正在我的sqlite数据库中进行sql查询,如下所示:

NSString *queryString = [NSString stringWithFormat:@"SELECT * FROM PROFILE WHERE no = '%@'", txtNo.text];
Run Code Online (Sandbox Code Playgroud)

但我需要查询不区分大小写.我怎么做?

需要一些指导.

rma*_*ddy 6

使用upper()功能:

SELECT * FROM PROFILE WHERE upper(no) = upper(?);
Run Code Online (Sandbox Code Playgroud)

您永远不应该使用stringWithFormat创建查询.正确使用sqlite3_bind_xxx将值绑定到查询.这样做的原因是正确使用sqlite3_bind_xxx将确保正确引用该值并正确转义任何特殊字符.阅读sQL注入hack以了解正确转义的重要性.