1

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

NSString *queryString = [NSString stringWithFormat:@"SELECT * FROM PROFILE WHERE no = '%@'", txtNo.text];

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

在这方面需要一些指导。

4

1 回答 1

6

使用upper()功能:

SELECT * FROM PROFILE WHERE upper(no) = upper(?);

你永远不应该用它stringWithFormat来创建你的查询。正确使用sqlite3_bind_xxx将值绑定到查询。这样做的原因是正确使用sqlite3_bind_xxx将确保正确引用该值并正确转义任何特殊字符。阅读 SQL injection hacks,了解正确转义的重要性。

于 2013-04-17T03:49:50.433 回答