2015-12-27 16 views
0

我使用这种方法删除coredata根据id,但这个数组retilure所有time.i获取所有数据在fetchRequest但结果来到零;请帮帮我。如何删除特定的索引值形式的核心数据,我存储所有数据根据索引

NSArray* resultss = [appDelegate1.managedObjectContext executeFetchRequest:fetchRequest error:&error]; 

// Here is my code 
AppDelegate *appDelegate=(AppDelegate *)[[UIApplication sharedApplication] delegate]; 
NSManagedObjectContext *context=[appDelegate managedObjectContext]; 
    NSEntityDescription *path=[NSEntityDescription entityForName:@"Add_Article" inManagedObjectContext:appDelegate1.managedObjectContext]; 
    NSPredicate *deleteParti = [NSPredicate predicateWithFormat:@"alternate_id == %@",str_articleid]; 
    [fetchAllData setPredicate:deleteParti]; 
NSArray* resultss = [appDelegate1.managedObjectContext executeFetchRequest:fetchRequest error:&error]; 
NSArray *getAlldata = [delegate.managedObjectContext executeFetchRequest:fetchAllData error:&error]; 

    if([getAlldata count] == 0) 
    { 
     NSLog(@"no found data"); 
    } 
    else 
    { 
     for(NSManagedObject *objectName in getAlldata) 
     { 
      [delegate.managedObjectContext deleteObject:objectName]; 
     } 
     NSError *error; 
     [delegate.managedObjectContext save:&error]; 
    } 

it'not工作。请帮助我

回答

0
AppDelegate *appDelegate=(AppDelegate *)[[UIApplication sharedApplication] delegate]; 

NSManagedObjectContext *context=[appDelegate managedObjectContext]; 



NSEntityDescription *path=[NSEntityDescription entityForName:@"Add_Article" inManagedObjectContext:context]; 



NSPredicate *deleteParti = [NSPredicate predicateWithFormat:@"alternate_id == %@",str_articleid]; 

// I am assuming that fetchAllData is your current NSFetchRequest object 
[fetchAllData setEntity:path]; 
[fetchAllData setPredicate:deleteParti]; 



NSArray *getAlldata = [context executeFetchRequest:fetchAllData error:&error]; 

if([getAlldata count] == 0) 
{ 
    NSLog(@"no found data"); 
} 
else 
{ 
    for(NSManagedObject *objectName in getAlldata) 
    { 
     [context deleteObject:objectName]; 
    } 
    NSError *error; 
    [context save:&error]; 
} 

请将您的代码改为此。它现在应该工作。 祝你好运

+0

你好,先生,我把这段代码,但这次也NSArray * getAlldata显示为零。 –

+0

您好先生,感谢它正在工作之前,我使用的代码,我发送错误的参数, –

+0

是的。有时它会发生 –