1

我有一个如下所示的核心数据对象。

DummyObject
{
  objectID:<objectID>
  objectName:<objectName> 
}

DummyObject保存了其中的 1000 个。我还有一个objectArray包含 100 个这些DummyObjects 的数组。

我想运行一个查询,该查询将删除所有DummyObject不在此数组中的 s。

4

1 回答 1

3

从我的评论

您可以为获取请求尝试如下谓词

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"NOT (self IN %@)", yourArray];

将它与 a 一起使用NSFetchRequest可以让您检索不在数组中的对象。

显然,yourArray包含类型的对象DummyObject

删除,

// fetch request with predicate...
NSArray* results = // execute the fetch request

for(NSManagedObject* dummy in results) {
   [context deleteObject:dummy];
}

// save here...

results您的 fetch 请求检索到的对象数组在哪里。

于 2013-01-02T13:57:51.747 回答