1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
-(void)deleteFirstPerson { NSFetchRequest *request = [NSFetchRequest fetchRequestWithEntityName:@"Person"]; NSPredicate *predicate = [NSPredicate predicateWithFormat:@"ANY firstName BEGINSWITH 'RICKY'"]; NSSortDescriptor *alphaSort = [NSSortDescriptor sortDescriptorWithKey:@"firstName" ascending:YES]; [request setPredicate:predicate]; [request setSortDescriptors:@[alphaSort]]; NSError *fetchError; NSArray *results = [[self managedObjectContext] executeFetchRequest:request error:&fetchError]; if([results count]==0) { NSLog(@"DB empty. No one to delete"); return; } //Rollback example Person * toDelete = [results objectAtIndex:0]; NSLog(@"%@", toDelete.firstName); NSLog(@"%@", toDelete.lastName); [[self managedObjectContext] deleteObject:toDelete]; //save back to data store [[self managedObjectContext] save:nil]; } |