【问题标题】:Does NSSet *children = [parent children]; perform a fetch request?NSSet *children = [parent children];执行获取请求?
【发布时间】:2012-04-05 11:40:10
【问题描述】:

NSSet *children = [parent children]; 是否导致核心数据执行提取,返回子实体关系的所有实例?

在 IB 中也一样:具有嵌套关系的模型键路径是否执行获取请求?

【问题讨论】:

    标签: objective-c cocoa core-data nsfetchrequest


    【解决方案1】:

    它返回一个像集合一样工作的 Core Data 内部“故障”集合对象。当您访问集合中的一个项目时,它会在第一次访问时进入您的持久存储以获取数据。这是有效的索引,因此它会比许多 fetch 请求更快,并且有时关系错误可能已经触发,所以它根本不会去存储。

    使用com.apple.CoreData.SQLDebug 环境变量来找出幕后发生的事情并微调性能。在您的方案中将其设置为 1。

    【讨论】:

    • 因此,如果有一种情况,我可以直接访问关系(如上)或执行提取,在大多数情况下访问关系是更好的选择?
    • 是的,访问关系。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-11-29
    • 1970-01-01
    • 1970-01-01
    • 2014-09-09
    • 2011-09-03
    • 2020-05-30
    • 1970-01-01
    相关资源
    最近更新 更多