aja*_*pan 11 core-data ios afincrementalstore
我创建一个类别对象并保存它:
NSManagedObjectContext *managedObjectContext = [[FTAppDelegate sharedAppDelegate] managedObjectContext];
_category = (Category *)[NSEntityDescription
insertNewObjectForEntityForName:@"Category"
inManagedObjectContext:managedObjectContext];
NSError *error = nil;
[managedObjectContext save:&error];
if (error) {
NSLog(@"error saving: %@",error);
}
Run Code Online (Sandbox Code Playgroud)
然后编辑类别对象的名称并再次保存.
_category.name = _nameTextField.text;
NSManagedObjectContext *managedObjectContext = [[FTAppDelegate sharedAppDelegate] managedObjectContext];
NSError *error = nil;
[managedObjectContext save:&error];
if (error) {
NSLog(@"error saving: %@",error);
}
Run Code Online (Sandbox Code Playgroud)
并得到此错误:
2013-01-12 17:53:11.862 instacat[7000:907] Unresolved error Error Domain=NSCocoaErrorDomain Code=134030 "The operation couldn’t be completed. (Cocoa error 134030.)" UserInfo=0x2027b300 {NSAffectedObjectsErrorKey=(
"<Category: 0x1ed43cf0> (entity: Category; id: 0x1ed52970 <x-coredata://68E5D7B6-D461-4962-BC07-855349DB3263-7000-00000141BAB4C399/Category/tE8AB2F2E-C14C-4E93-8343-CC245B7726622> ; data: {\n categoryId = nil;\n isPrivate = 0;\n name = techies;\n users = (\n );\n})"
), NSUnderlyingException=Cannot update object that was never inserted.}, {
NSAffectedObjectsErrorKey = (
"<Category: 0x1ed43cf0> (entity: Category; id: 0x1ed52970 <x-coredata://68E5D7B6-D461-4962-BC07-855349DB3263-7000-00000141BAB4C399/Category/tE8AB2F2E-C14C-4E93-8343-CC245B7726622> ; data: {\n categoryId = nil;\n isPrivate = 0;\n name = techies;\n users = (\n );\n})"
);
NSUnderlyingException = "Cannot update object that was never inserted.";
}
Run Code Online (Sandbox Code Playgroud)
感谢您的时间和考虑.
我正在使用AFIncrementalStore.
当你更新一个对象时,你不能使用insertNewObjectForEntityForName,你需要先保存你的对象,然后调用类似
[self.managedObjectContext refreshObject:_category mergeChanges:YES]
Run Code Online (Sandbox Code Playgroud)
然后再次使用 ManagedObjectContext 保存。
这就是直接 SQL“INSERT”和“UPDATE”的区别。
| 归档时间: |
|
| 查看次数: |
6306 次 |
| 最近记录: |