2012-05-10 10 views
0

コアデータエンティティの属性にデータを追加しようとしています。NSMutableArrayからNSManagedObjectContextへのデータの追加

Contents of contentArray: (
036, 
038, 
040, 
041, 
043, 
044, 
044, 
043, 
042, 
041, 
041, 
042, 
042, 
042, 
042, 
041, 
041, 
042, 
043, 
044, 
045, 
046, 
047, 
048, 
050, 
053, 
054, 
056, 
059, 
060, 
057, 
055, 
053, 
051, 
048, 
046, 
043, 
035, 
034, 
033, 
032, 
031, 
032 
} 

上記の例は、可変配列のサンプル内容です。私は、下記のよう NSManagedObjectContext変数にそれを追加しようとしています:

for (int i =0;i<[contentArray count];i++){ 
      int a =[[contentArray objectAtIndex:i] intValue]; 
      NSLog(@"value:%d",a); 
      [newManagedObject setValue:[NSNumber numberWithInteger:a ] forKey:@"timeStamp"]; 
      // Save the context. 
      NSError *error = nil; 
      if (![context save:&error]) { 

      NSLog(@"Unresolved error %@, %@", error, [error userInfo]); 
      abort(); 
    } 
    } 

私はちょうどそれが表にタイムスタンプ値を追加するiOS用のデフォルトのコアデータアプリを操作します。セルは以前の値で上書きされています。私の実装に何か問題はありますか?コンテンツ配列のデータを上書きするのではなく、データを追加する方法は?どんな助けでも大歓迎です。ありがとう

+0

たエンティティのために...このうち、コアdata..Checkにデータを保存し、あなたのコードのためにそれを変更するための基本的な方法は何ですか? –

答えて

2

ループを通過するたびに、新しい管理オブジェクトを作成してコンテキストに追加する必要があります。常に同じオブジェクトを使用する限り、データが上書きされるのは不思議ではありません。

一方、保存コードをループの外に置くべきでしょう。

+0

データベースに追加できるデータの数に制限はありますか? – Siddharthan

+0

とありがとうございました。 – Siddharthan

0

これは、配列からそれらの値を追加している

NSManagedObjectContext *context = [self managedObjectContext]; 
countryObject=[NSEntityDescription 
          insertNewObjectForEntityForName:@"Country" 
          inManagedObjectContext:context]; 
countryObject.city = @"New york"; 
countryObject.people = [NSString stringWithFormat:@"%@",[yourArray objectAtIndex:i]]; 
NSError *error; 
if (![context save:&error]) { 
    NSLog(@"Whoops, couldn't save: %@", [error localizedDescription]); 
} 
+0

こんにちはR.Aありがとうございます。 UIViewControllerからmanagedobjectcontextを呼び出すことは可能ですか?これは2番目のView Controllerですか?あなたが私に言っていることを知っているなら、私は別の質問を掲示して、そこに答えることができます。助けてくれてありがとう – Siddharthan

関連する問題