【发布时间】:2009-08-11 22:46:37
【问题描述】:
我认为 NSDeleteRequest 类不存在,但我希望它存在。
我可以创建一个 NSPredicate 并使用 NSFetchRequest 发出:
select * from foo where x=y
我该如何发布:
从 x=y 的 foo 中删除
?
删除 1000 行的唯一方法似乎是获取它们,循环遍历它们,然后在每个 NSManagedObject 上调用 delete。是对的吗?为什么我不能只发出 1 个删除 sql 语句?
【问题讨论】:
-
您必须遍历数组并一次删除一个,但只需告诉托管对象上下文您正在执行批处理作业并且您不需要任何撤消支持立即保存。这应该不是问题。如果是,那么您使用 CoreData 不正确,可能需要考虑使用直接 sqlite 或 RDBMS。
标签: objective-c cocoa sqlite core-data