ios - Core Data iOS 中完全匹配的 NSString

标签 ios objective-c core-data

我在 CoreData 中拥有名为 myentity 的实体和名为 myuniqueid 的属性,并且我想运行 SQL 查询,如下所示:

Select * from myentity where myuniqueid == 1000

如何获取与 SQL 查询中匹配的指定行?这样我想过滤 myuniqueid1000 的所有行。

我的代码:

NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
    NSManagedObjectContext *context = [self managedObjectContext];
    if (context == nil) {}
    else {
    NSEntityDescription *entity = [NSEntityDescription entityForName:@"myentity" inManagedObjectContext:context];
    NSPredicate *predicate = [NSPredicate predicateWithFormat:@"myuniqueid == 1000"];
    [fetchRequest setPredicate:predicate];

    [fetchRequest setEntity:entity];
    NSArray *items = [context executeFetchRequest:fetchRequest error:nil];
        for (int i=0; i<4; i++) {
            NSManagedObject *mo = [items objectAtIndex:i];  // assuming that array is not empty
            id value = [mo valueForKey:@"myuniqueid"];
            NSLog(@"SENDER: %@",value);
        }

    }

我收到错误:“无法为谓词生成 SQL (myuniqueid == 1000)(RHS 上有问题)”

最佳答案

试试这个谓词:

NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"myentity"];
fetchRequest.predicate = [NSPredicate predicateWithFormat:@"myuniqueid == %@", @(1000)];
NSArray *items = [[self managedObjectContext] executeFetchRequest:request error:nil];

关于ios - Core Data iOS 中完全匹配的 NSString,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32124700/

相关文章:

iphone核心数据保存时出现 Unresolved 错误

ios - 判断路径是否为根目录的正则表达式

objective-c - 关于 "addSubview"函数的重绘

iphone - 只让本地通知出现一次

ios - 按下附件按钮中 Storyboard 的推送 View

iphone - 核心数据 : Save unique object ID

android - 当应用程序处于特定状态时,以编程方式限制用户访问 Android/iPad/iPhone 设备

ios - 如何正确设置#define 来制作简单的记录器?

iphone - 如何知道 View 堆栈中最新的 View Controller

ios - 为离线/断开连接保存花名册提议