0

我正在使用核心数据开发一个 iphone 应用程序和数据库即时通讯。在保存核心数据的同时正常工作。

但有时,保存失败。这会导致我的应用程序中出现重复记录。我有 2 张桌子

  1. 父表

  2. 子表

当子表失败并且用户尝试再次保存时,会创建多个父记录。我的问题是:

  1. 为什么核心数据失败。由于它很少见,我无法找到它失败的原因。可能是什么原因?
  2. 如果子表无法保存,是否有任何方法可以回滚父表的数据。

提前致谢 :)

4

1 回答 1

0

1. 为什么核心数据失败。由于它很少见,我无法找到它失败的原因。可能是什么原因? 由于您没有编写任何代码,因此很难检测到,当您将数据保存到核心数据时,如果保存失败,您可以记录错误,然后您将能够知道问题的确切原因。

NSError *error;
if (![managedObjectContext save:&error]) {
    NSLog(@"Failed to save - error: %@", [error localizedDescription]);
}

2.如果子表保存失败,有什么办法可以回滚父表的数据。 不,我认为不可能回滚。在这种情况下,我总是检查数据是否已经插入,如果没有,我将输入该数据,反之亦然。

于 2013-08-17T04:56:53.757 回答