【发布时间】:2017-12-09 23:02:50
【问题描述】:
现在我正在使用 coredata 来保存我的数据。 一切正常,但现在我更改了将值保存到数据库的逻辑。所以我需要比较逻辑更改后相同的值是否保存在表中。所以我需要比较表格。
所有链接都显示 coredata 创建的数据库文件是 .sqlite 扩展名。但是在该位置创建的文件是“persistentStore、persistentStore-shm、persistentStore-wal”,如屏幕截图所示。
我应该如何打开这些文件以查看表格中保存的数据。 提前致谢
- (void)setupDatabase:(void (^)(BOOL))completionHandler
{
NSURL *url = [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject];
url = [url URLByAppendingPathComponent:@"MainDataModel"];
self.db = [[CWUIManagedDocument alloc] initWithFileURL:url];
NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithBool:YES], NSMigratePersistentStoresAutomaticallyOption,
[NSNumber numberWithBool:YES], NSInferMappingModelAutomaticallyOption, nil];
self.db.persistentStoreOptions = options;
if(![[NSFileManager defaultManager] fileExistsAtPath:[self.db.fileURL path]])
{
[self.db saveToURL:self.db.fileURL forSaveOperation:UIDocumentSaveForCreating completionHandler:^(BOOL success) {
self.dataManager.db = self.db;
completionHandler(success);
}];
} else if (self.db.documentState == UIDocumentStateClosed) {
[self.db openWithCompletionHandler:^(BOOL success) {
self.dataManager.db = self.db;
completionHandler(success);
}];
}
}
【问题讨论】:
-
可以添加
persistentStoreCoordinator的代码吗? -
我只是用这个方法设置数据库
-
你能不能把
url = [url URLByAppendingPathComponent:@"MainDataModel"];换成url = [url URLByAppendingPathComponent:@"MainDataModel.sqlite"];。删除应用并再次运行
标签: ios objective-c sqlite core-data