【发布时间】:2011-12-01 20:54:37
【问题描述】:
我正在使用 CoreData 处理应用程序。我有一个简单的结构:
名称 姓氏
我需要更新一个条目,所以我这样做:
if (strLastname.lengt > 0) {
predicate = [NSPredicate predicateWithFormat:@"(dbName LIKE[c] %@ AND dbLastname LIKE[c] %@)", strName, strLastname];
else {
predicate = [NSPredicate predicateWithFormat:@"(dbName LIKE[c] %@)", strName];
}
现在的问题是,当我的数据库包含更多具有相同名称的用户并且其中一个没有姓氏时,谓词将始终匹配名称类似于 strName 的第一个条目,因此我应该检查 dbLastname 是否类似于 '' 但它失败:
if (strLastname.lengt > 0) {
predicate = [NSPredicate predicateWithFormat:@"(dbName LIKE[c] %@ AND dbLastname LIKE[c] %@)", strName, strLastname];
else {
predicate = [NSPredicate predicateWithFormat:@"(dbName LIKE[c] %@ AND dbLastname LIKE[c] '')", strName];
}
谓词正常,但 fetchedObject 为空。
感谢任何帮助。
最大
【问题讨论】:
标签: iphone core-data nspredicate