【发布时间】:2014-02-25 15:38:32
【问题描述】:
在我的应用程序中,我有此代码来更新数据库:
NSManagedObjectContext *context = [self managedObjectContext];
NSFetchRequest *fetchRequest=[NSFetchRequest fetchRequestWithEntityName:@"Struct"];
NSError *error = nil;
for (id element in array){
[fetchRequest setPredicate:[NSPredicate predicateWithFormat:@"id==%@",[element objectForKey:@"id"]]];
Struct *struct = [[context executeFetchRequest:fetchRequest error:&error] lastObject];
if (struct != nil){
//updating value of attributes
struct.name = [element objectForKey:@"n"];
struct.val = [element objectForKey:@"val"];
struct.pos = [element objectForKey:@"pos"];
}
else{
//create a new identity
}
}
没关系,但我还有另外两个与 Struct 相关的对象:
“Id_Loc”(一对多) “详细信息”(一对一)
我不知道如何更新它们,我不知道如何从我的对象“结构”中调用它们 我什么也没找到 你能帮助我吗? 谢谢
【问题讨论】:
-
Struct应该在标头中有一些方法(显示该代码)。关系是否已经包含要更新的对象,或者您需要添加新对象?删除任何现有的怎么样?
标签: ios core-data nsfetchrequest nsentitydescription