我发现了 2 种不同的方法来创建 NSPredicate。
方式一:
NSExpression *exprName = [NSExpression expressionForKeyPath:@"name"];
NSExpression *exprFilter = [NSExpression expressionForConstantValue: name ];
NSPredicate *predicate = [NSComparisonPredicate predicateWithLeftExpression: exprName
rightExpression: exprFilter
modifier: NSDirectPredicateModifier
type: NSContainsPredicateOperatorType
options: NSCaseInsensitivePredicateOption];
方式二:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name CONTAINS[c] %@", name];
创建 NSPredicate 并防止 SQLInjection 的最佳方法是什么?