iphone - 我的数据库数据在哪里(核心数据,iOS)

标签 iphone ios database sqlite core-data

我正在使用 sqlite 数据库来存储我的 iPhone 应用程序的数据。我知道此 sqlite 文件的位置位于 Users/Leontien/Library/Application Support/iPhone Simulator/7.0/Applications/4ACB095B-D6B7-488F-AB18-27800A3386E4/Documents。

当我启动应用程序时,我可以创建一些数据库对象。我可以在表格 View 中看到创建的对象。当我停止并启动我的应用程序时,它会显示包含已创建对象的列表。所以我知道我的数据存储在某个地方。

当我打开上述路径中的 sqlite 文件时,SQLite 数据库浏览器显示一个完全空的数据库(不存在任何表)。这不是我所期望的...

我在哪里可以找到我的数据库数据?

我在 AppDelegate.m 中为核心数据使用以下代码。

#pragma mark - Core Data stack

- (NSManagedObjectContext *)managedObjectContext {
    if (_managedObjectContext != nil) {
        return _managedObjectContext;
    }

    NSPersistentStoreCoordinator *coordinator = [self persistentStoreCoordinator];
    if (coordinator != nil) {
        _managedObjectContext = [[NSManagedObjectContext alloc] init];
        [_managedObjectContext setPersistentStoreCoordinator:coordinator];
    }
    return _managedObjectContext;
}


- (NSManagedObjectModel *)managedObjectModel {
    if (_managedObjectModel != nil) {
        return _managedObjectModel;
    }
    _managedObjectModel = [NSManagedObjectModel mergedModelFromBundles:nil];

    return _managedObjectModel;
}

- (NSPersistentStoreCoordinator *)persistentStoreCoordinator {
    if (_persistentStoreCoordinator != nil) {
        return _persistentStoreCoordinator;
    }

    NSURL *storeURL = [[self applicationDocumentsDirectory] URLByAppendingPathComponent:@"PetHealth.sqlite"];

    NSError *error = nil;
    _persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]];
    if (![_persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:nil error:&error]) {
        NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
        abort();
    }

    return _persistentStoreCoordinator;
}

最佳答案

When I stop and start my app

您是否从多任务菜单中终止了您的应用程序?

如果是,请参阅 my answer here .这可能是您遇到问题的原因。 SQLite Manager它是免费的,并且可以很好地用于 iOS 7 项目。 SimPholders app在这里也可能有所帮助。

关于iphone - 我的数据库数据在哪里(核心数据,iOS),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19475096/

相关文章:

iphone - 在iPhone SDK中的YouTube播放器中播放视频

iOS 9 在带有 EXC_BAD_ACCESS KERN_INVALID_ADDRESS 的 _prepareForCAFlush 中崩溃

iphone - Clang 静态分析器是否足够?

ios - 在swift 4中将对象数组中的选定项目保存到UserDefaults

ios - UITextField iOS : how to deal with the dismiss keyboard button?

ios - 更改 UIActivityViewContoller 图标顺序

ios - 如何将 Ubuntu 上的 Ionic 项目导出到 iOS?

mysql - 在 SQL 数据库中保存大型文本数据(保存在字符串生成器中)的最佳方法?

database - BlackBerry 设备存储上的 SqLite 数据库

sql - 下一个和上一个记录