核心数据保存到数据库不起作用
Posted
技术标签:
【中文标题】核心数据保存到数据库不起作用【英文标题】:Core Data Saving to Database not Working 【发布时间】:2010-10-13 23:42:25 【问题描述】:我是 iPhone 的第一次 Core Data 用户/学习者,我认为 [managedObjectContext save:$error]
用于保存对 Persistant Store 的更改。
但是当我重新加载并调用 NSFetch 时,对象仍然存在。任何想法为什么?
for (int i ; i < [mutableFetchResults count];i++)
NSManagedObject *toDelete = [mutableFetchResults objectAtIndex:i];
[managedObjectContext toDelete];
// Update the array and table view.
[mutableFetchResults removeObjectAtIndex:i];
if (![managedObjectContext save:&error])
// Handle the error.
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
exit(-1); // Fail
【问题讨论】:
【参考方案1】:我期待看到您从 managedObjectContext 中删除对象的行:
[manageObjectContext deleteObject:toDelete];
假设 manageObjectContext 是您的上下文,toDelete 是您的上下文中的 managedObject,或者 mutableFetchResults。
然后我希望之后直接看到保存。
【讨论】:
+1 这是问题的原因。他没有从上下文中删除对象,而只是从某个随机数组中删除。以上是关于核心数据保存到数据库不起作用的主要内容,如果未能解决你的问题,请参考以下文章