ios CoreData删除第n个对象[重复]
Posted
技术标签:
【中文标题】ios CoreData删除第n个对象[重复]【英文标题】:ios CoreData delete nth object [duplicate] 【发布时间】:2014-02-28 13:52:15 【问题描述】:我有一个带有单个实体的简单 ios7 CoreData 应用程序。 该实体应该只存储最后 100 条记录。 当我添加第 101 条记录时 - 我想删除最旧的记录,以便始终保留 100 条(或更少)记录
如何删除“第n条记录”?
【问题讨论】:
【参考方案1】:你可以这样做:
NSError *error;
//clear job: delete the old records before inserting new ones
NSFetchRequest *del_fetchRequest = [[[NSFetchRequest alloc] init] autorelease];
[del_fetchRequest setEntity: [NSEntityDescription entityForName:@"News" inManagedObjectContext:_context]];
[del_fetchRequest setPredicate: [NSPredicate predicateWithFormat: @"(RecordID< %@)", number_here]];
NSArray *del_newsMatchingTitle = [_context executeFetchRequest:del_fetchRequest error:&error];
for (NSManagedObject *managedObject in del_newsMatchingTitle)
[_context deleteObject:managedObject];
//NSLog(@"%@ object deleted",managedObject);
if (![_context save:&error])
// NSLog(@"Error deleting %@ - error:%@",del_fetchRequest,error);
【讨论】:
以上是关于ios CoreData删除第n个对象[重复]的主要内容,如果未能解决你的问题,请参考以下文章