coredata学习总结(四)

Fetching Objects

 

既然数据在core data已经持久化保存了,你就可以使用NSFetchRequest来访问现存的数据。

 

 

Fetching NSManagedObject Instances

 

 

在这个例子中,构造了一个NSFetchRequest来描述想得到的数据。然后调用NSManagedObjectContextexecuteFetchRequest:error:来传递请求。

executeFetchRequest:error:方法有两种可能的返回结果。或者返回有零个或者多个对象的数据,也或者返回nil。如果返回nil,就会收到来自于core data的错误并且需要作出响应处理。空的数组暗示着没哟 iu找到响应的记录。

Filtering Results

可以在发送fetch请求的时候通过NSPredicate对象来缩小返回的对象的范围。例如你只想要Employee对象中名字为Trevor的结果,就可以如下这样做。

  1. NSString *firstName = @"Trevor";
  2. [fetchRequest setPredicate:[NSPredicate predicateWithFormat:@"firstName == %@", firstName]];
  1. let firstName = "Trevor"
  2. fetchRequest.predicate = NSPredicate(format: "firstName == %@", firstName)

 

除了可以缩小返回对象的范围外,你也可以配置这些对象如果返回。例如可以让core data返回NSDictionary类型的数据。而且你可以配置NSFetchRequest,这样这些NSDictionary实例就会只包含Employee实体相关的系列属性了。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值