2014-08-31 42 views
1

在我目前的项目中,我使用核心数据来存储信息。现在我需要更新我的手机应用程序和数据模型,稍作更改。我想知道我是否会采取一些行动来删除设备上的旧数据?或者这个过程是否自动?如何清除更新时的核心数据内容?

+0

您是否试过阅读模型迁移?核心数据可以自动将您的数据迁移到新的数据库中,您实际上不应该删除所有内容 – 2014-08-31 10:29:17

+0

请参阅此https://www.google.com/search?client=safari&rls=zh-CN&q=model+migration+core+数据&即= UTF-8&OE = UTF-8 – 2014-08-31 10:31:22

回答

0

以下是你需要的轻量级迁移,适用于大多数情况下该怎么做。

  1. 创建一个新的模型版本
  2. 进行更改
  3. 使新的模型版本活动之一。
  4. 添加这些时,你把你的持久化存储

以下两个选项和你都设置。

@{NSMigratePersistentStoresAutomaticallyOption : @YES, 
    NSInferMappingModelAutomaticallyOption : @YES} 

现有数据现在保留。这一切都很好documented,所以请在询问后续问题之前做好您的研究。

另一方面,如果您想“清除”所有旧数据(如果您确定这是您的用户想要的),则可以在将其添加到持久性存储库之前简单地删除持久性存储库NSFileManager协调。