gpt4 book ai didi

iphone - 如何只获取Core Data中的第一条记录?

转载 作者:行者123 更新时间:2023-12-03 18:13:27 25 4
gpt4 key购买 nike

我正在使用 Core Data,我只想获取数据集中的第一条记录,这可能吗?

最佳答案

您可以使用 NSFetchRequest 上的 setFetchLimit: 方法来限制获取的记录数量。因此,如果您只想要第一条记录:

// Given some existing NSFetchRequest *request and NSManagedObjectContext *context:
[request setFetchLimit:1];
NSError *error;
NSArray *results = [context executeFetchRequest:request error:&error];

请注意,对 executeFetchRequest:error: 的调用仍将返回 NSArray;您仍然需要先将第一个对象从数组中取出,然后才能使用它,即使它是一个大小为 1 的数组。

另一种效率较低的方法:根据您的商店类型,限制提取可能会显着提高性能。但是,如果没有,或者您不太担心性能,并且稍后可能会使用更多数据,则可以提前从数组中取出第一个对象:

// Given some existing result NSArray *results:
NSManagedObject *firstManagedObject = [results firstObject];

如果您确定数组中有一个对象,您甚至可以通过执行以下操作将其放入另一个数组(例如,在 UITableViewController 中使用):

// Again, with some NSArray *results:
NSArray *singleObjectResult = [results subarrayWithRange:NSMakeRange(0, 1)];

关于iphone - 如何只获取Core Data中的第一条记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1197593/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com