我正在使用核心数据来存储一些细节。但是当我第二次运行我的应用程序时,实体中的内容会翻倍。每次我运行我的应用程序时都会继续这种情况。我尝试删除对象,然后再添加这个问题Core Data: Quickest way to delete all instances of an entity但随后删除成功而不是添加部分,因此我在代码中退出(从我所在的其他部分正在访问数据库)
我使用了下面的代码
-(void)synDBFavSpecies:(NSString *)speciesName:(NSString *)speciesId:(NSString *)Imagename
{
NSManagedObjectContext *context=app.managedObjectContext;
NSError *err;
NSFetchRequest *request1=[[NSFetchRequest alloc]init];
NSEntityDescription *entity1=[NSEntityDescription entityForName:@"FavoriteSpecies" inManagedObjectContext:context];
[request1 setEntity:entity1];
NSArray *result1=[context executeFetchRequest:request1 error:&err];
NSManagedObject *ph1;
for(ph1 in result1 )
{
[context deleteObject:ph1];
NSString *sid= [ph1 valueForKey:@"ID"];
NSLog(@"Sp.ID:%@",sid);
if(sid)
{
[context deleteObject:ph1];
if(![context save:&err])
{
NSLog(@"error");
}
}
}
NSManagedObject *SetDB=[NSEntityDescription insertNewObjectForEntityForName:@"FavoriteSpecies" inManagedObjectContext:context];
[SetDB setValue:speciesName forKey:@"favspecies"];
[SetDB setValue:speciesId forKey:@"ID"];
[SetDB setValue:Imagename forKey:@"speciesimage"];
if(![context save:&err])
{
NSLog(@"error");
}
}
谁能帮我?