0

我有以下情况:

将数据从CoreData实体读取到名为observationList 的数组中

循环遍历数组,检查数据,可能需要更新位置 x 处的数据。

for (int x = 0; x < [observationList count]; x++)
{
  //check for need of data update - if there is a need to update ....

  for (NSManagedObject *schoolObject in [self observationList])
  {
  [schoolObject setValue:[NSString stringWithFormat:@"%@", classCheck] forKey:@"obsClassName"];
  }

  NSError *error;
  [context save:&error];
}

我意识到我正在做的是更新 CoreData 中的所有记录,所以我要问的是如何专门更新位置 x 处的记录。

4

2 回答 2

2

如果schoolObject是 in observationList,那么您只需更新位置 x 处的特定记录

for (int x = 0; x < [observationList count]; x++)
{
  NSManagedObject *schoolObject = [[self observationList] objectAtIndex:x];

   //check for need of data update - if there is condition

  [schoolObject setValue:[NSString stringWithFormat:@"%@", classCheck] forKey:@"obsClassName"];

  NSError *error;
  [context save:&error];
}

首先schoolObjectobservationList特定位置获取并使用适当的条件进行更新

于 2013-09-17T06:53:06.170 回答
1

这行得通吗?检查后,得到这样的对象:

NSManagedObject *schoolObject = [[self observationList] objectAtIndex:x]

然后根据需要设置值。

于 2013-09-17T06:38:19.723 回答