在核心数据中保存许多行

时间:2014-08-03 11:29:45

标签: ios objective-c core-data

我读到了非常小心如何通过核心数据将许多行保存到表中的说明,但是它的工作错误。保存的值总是秒,并且有两个值。请帮我把错误发现到我的代码中:

    -(void)saveDataToLocal{

    NSManagedObject *newPref;
    newPref = [NSEntityDescription insertNewObjectForEntityForName:@"Company" inManagedObjectContext:context];
    [newPref setValue:@"SiliconPrime" forKey:@"name"];
    [newPref setValue:@"Software company at VietNam" forKey:@"descreption"];
    [newPref setValue:[NSNumber numberWithInt:3] forKey:@"rating"];
    //
    newPref = [NSEntityDescription insertNewObjectForEntityForName:@"Company" inManagedObjectContext:context];
    [newPref setValue:@"Microsoft" forKey:@"name"];
    [newPref setValue:@"USA Company" forKey:@"descreption"];
    [newPref setValue:[NSNumber numberWithInt:3] forKey:@"rating"];

    NSError *error;
    if (![context save:&error]) {
        NSLog(@"########## Error save data %@", [error localizedDescription]);
    }
}

我将此功能调用到application didFinishLaunchingWithOptions:。代码错误或我是否需要在xcdatamodeld文件或其他地方进行任何配置?

1 个答案:

答案 0 :(得分:0)

你的意思是说只保存了第二个对象吗?第一个没有保存?您可以执行以下任一操作

  1. 在创建第二个上下文对象之前调用[context save:& error]。
  2. 两个对象有两个不同的变量。