所有
我在我的程序中实现了Core Data来存储客户信息。让我们称每个实体为“CustomerInformation”。每个“CustomerInformation”实体都有三个属性,“count”,“property2”和“property3”,其中count是该特定实体的数字标识符。
因此,假设我有三个“CustomerInformation”实体......
CustomerInformation
-count //for example, this would be "1"
-property2
-property3
CustomerInformation
-count //for example, this would be "2"
-property2
-property3
CustomerInformation
-count //for example, this would be "3"
-property2
-property3
当我删除“CustomerInformation”(2)时,其他两个将保留其计数。此时我需要做的是循环遍历我的所有实体(在本例中为3)并查看缺失值的位置(如果我删除了“CustomerInformation”(2),则2将是缺失值)。
这是我的想法,但我需要帮助才能完成它。注意:for循环中的7是我想要存储的最大客户数,不用担心那部分
NSFetchRequest *custRequest = [[NSFetchRequest alloc] init];
ProjectAppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];
NSManagedObjectContext *custContext = [appDelegate managedObjectContext];
NSEntityDescription *customerInformation = [NSEntityDescription entityForName:@"CustomerInformation"
inManagedObjectContext:custContext];
[custRequest setEntity:customerInformation];
NSError *error;
NSArray *array = [custContext executeFetchRequest:custRequest error:&error];
for (int n=0; n<=7; n++)
{
//here I need it to go through and find the missing 2
}
答案 0 :(得分:1)
搜索整个数据库以推断出刚删除的对象的count
似乎是错误的方法。相反,您应该记录您删除的任何对象的count
,以便您可以避免这一整个问题。当然,当你的数据库中有七个对象时,这并不是什么大不了的事,但是当你有数万个对象时它不会很好。