当我们使用 xcode 重新安装应用程序时,iOS 中的核心数据数据库是否会删除所有现有行?
最佳答案
在 Xcode 中安装应用程序:
- 删除旧应用,然后安装:在这种情况下,核心数据数据库将被删除。
- 在旧应用存在时安装:在这种情况下,核心数据不会执行任何操作。
在大多数情况下,第二个是我们应该注意的。 如果您更改核心数据中的表,您应该告诉核心数据进行迁移。这就是您所需要的:
NSDictionary *options = @{NSMigratePersistentStoresAutomaticallyOption: @YES,
NSInferMappingModelAutomaticallyOption: @YES};
NSError *error;
_persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel: [self managedObjectModel]];
if (![_persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType
configuration:nil
URL:storeUrl
options:options
error:&error]) {
// Handle error
NSLog(@"Problem with PersistentStoreCoordinator: %@",error);
}
NSMigratePersistentStoresAutomaticallyOption = YES; 就可以了。 我认为你应该始终这样做。
关于ios - 核心数据数据库和应用程序重新安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21641769/