다음 코드를 사용하여 여러 행을 내 coredata 데이터베이스에 저장하려고합니다. 마지막 행만 저장합니다. 왜 그 일을하는거야?왜 내 데이터가 핵심 데이터에 저장되지 않습니까?
nsManagedObject1.column1 = @"First row";
nsManagedObject1.column2 = @"Test 2";
//insert first row
if (![context save:&error]) {
NSLog(@"Could not save the data: %@",[error localizedDescription]);
}
//insert second row
nsManagedObject1.column1 = @"Second row";
nsManagedObject1.column2 = @"Test 2";
if (![context save:&error]) {
NSLog(@"Could not save the data: %@",[error localizedDescription]);
}
//see how many rows exist in the database
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"TestDB" inManagedObjectContext:context];
[fetchRequest setEntity:entity];
NSArray *fetchedObjects = [context executeFetchRequest:fetchRequest error:&error];
NSLog(@"Number of rows: %d",[fetchedObjects count]);
숫자가 하나뿐입니다. 행의 데이터를 인쇄 할 때 데이터베이스에 입력 한 마지막 행만 찾습니다. 왜 그 일을하는거야? 컨텍스트에서 저장 했으므로 두 행이 데이터베이스에서 사용 가능할 것으로 예상했습니다. 도와주세요! 나는 또한 오류가 발생하지 않습니다.
추신 : 나는이 일을해서는 안되지만 모든 행이 왜 저장되지 않는지 이해해야한다고 생각합니다.
Xcode는 IDE입니다. 그것은 아무것도 저장하지 않고 실행합니다. – vikingosegundo