iphone - 如何在 Core Data 中选择特定的数据?

标签 iphone objective-c ios xcode core-data

我有一个使用 Core Data 并在其中加载 sqlite 数据库的示例程序。我正在使用这段代码显示所有值

NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Name"
                                          inManagedObjectContext:context];
[fetchRequest setEntity:entity];
NSArray *fetchedObjects = [context executeFetchRequest:fetchRequest error:&error];

for (Name *name in fetchedObjects) {
    NSLog(@"ID: %@", name.nameId);
    NSLog(@"First Name: %@", name.first);
    NSLog(@"Middle Name: %@", name.middle);
    NSLog(@"Last Name: %@", name.last);
}

这段代码工作正常,我的问题是我无法选择特定的数据/记录。示例我想选择 ID = 1 的记录。

谢谢!

最佳答案

在执行请求之前,您必须使用谓词(通过 NSPredicate)。

类似的东西:

NSPredicate *predicateID = [NSPredicate predicateWithFormat:@"nameID == %d",-1];
[fetchRequest setPredicate:predicateID];

关于iphone - 如何在 Core Data 中选择特定的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11306015/

相关文章:

ios - 当有两个不同的地方发出信号和等待时如何使用条件

ios - 如何在完整 map 的mapbox ios sdk中拍摄快照

ios - Objective C 内存管理 - "pointer being freed was not allocated"错误

ios - 将 swift 协议(protocol)属性覆盖为可选

iphone - 从 UIImagePickerController SourceType 相机获取全高清图像,无需单击捕获按钮

iphone - iOS iPhone如何按使用频率列出UTextView中的所有关键字?

iphone - MapView注释不拖动

ios - 在 iOS 中获取 UIGestureRecognizer 的 Action

ios - 使用 RestKit + CoreData 进行类设计

ios - cocos2d中如何在不同的CCSpriteBatchNode之间切换 Sprite