0
這是我用來將新對象插入到我的Raza實體中的代碼。沒什麼特別的。我已經在我的應用程序中隨處使用了這種委託方法和語法,但出於某種原因,我無法在此特定實體上執行此操作。CoreData問題:錯誤:(19)PRIMARY KEY必須是唯一的
-(void)guardarRaza:(NSString *)nombre guardar:(BOOL)guardar{
if (guardar) {
Raza *raza = [NSEntityDescription insertNewObjectForEntityForName:@"Raza"
inManagedObjectContext:self.managedObjectContext];
raza.nombre = nombre;
NSError *error;
if (![self.managedObjectContext save:&error]) {
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
abort();
}
}
[self dismissModalViewControllerAnimated:YES];
}
問題可能來自sqlite,因爲我們使用一個版本來預先填充啓動的版本。我遵循名爲「核心數據教程:如何預加載/導入現有數據」的raywenderlich方法。
它確實可以順利地與其他實體協同工作,但是當我插入並保存在特定的實體上時,它會與CoreData一起崩潰:錯誤:(19)PRIMARY KEY必須是唯一的。我已經簽出了sqlite,手動插入和刪除新行,它只是工作。
有沒有人有同樣的問題,或者說知道如何解決它。 在此先感謝
看看這裏.. http://stackoverflow.com/questions/ 12479232/why-this-code-raising-the-coredata-error-19-primary-key-must-be-unique – TonyMkenu
謝謝,但之前找到了答案。它沒有解決問題。我通過檢查我的sqlite數據庫並通過用正確的參數替換表Z_ENT來計算出來。 – sam80