【发布时间】:2015-01-20 10:53:17
【问题描述】:
我正在数据中存储一些数据。当我单击按钮时,coredata 中的数据将被删除。 我正在使用下面的代码。
NSManagedObjectContext *context = [[YPOAppDelegate sharedAppDelegate] managedObjectContext];
NSManagedObjectModel *model = [[YPOAppDelegate sharedAppDelegate] managedObjectModel];
for (NSEntityDescription *entity in model) {
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
[fetchRequest setEntity:entity];
[fetchRequest setIncludesSubentities:NO];
NSArray *objects = [context executeFetchRequest:fetchRequest error:nil];
NSLog(@"objects ===%d",objects.count);
for (NSManagedObject *managedObject in objects)
{
[context deleteObject:managedObject];
}
}
NSError *err;
[context save:&err];
出现错误,应用程序崩溃 由于未捕获的异常“NSObjectInaccessibleException”而终止应用程序,原因:“CoreData 无法满足 '0x7e3937f0 的错误”
如何解决此崩溃问题。请给我你的建议。
【问题讨论】:
-
您是否有任何与
Delete Rule或No Action有关系的实体?这可能会导致这种错误。 -
使用 [context deleteObjects:] 而不是你的 for 循环。
标签: ios objective-c iphone core-data ios7