没有创建sqlite表

时间:2014-04-09 02:36:57

标签: ios sqlite

我是sQLite的新手,并在我的应用程序的mac终端中创建了一个sqlite数据库。我然后添加了数据库我的应用程序并运行良好。最近我需要另一个表,所以我下载了sqlitemanager(一个带有gui for sqlite数据库的firefox插件,有点不想为everysingle事件编写脚本)。从那以后,我一直收到错误"表未找到"。然而,浏览我的数据库,我看到表,但如果我在ios模拟器中查看数据库,我没有看到表(数据库是零kb,所以我猜错误是合理的)。但是,如果我只是将数据库直接复制并粘贴到该文件夹​​中,该应用程序可以正常工作。然而,这不是一个好的解决方案......但是这是因为我使用过 这个经理编辑数据库?如果是,我可以使用什么经理,或者如果没有问题。

谢谢

+ (NSString *) getDBPath {
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory , NSUserDomainMask, YES);
    NSString *documentsDir = [paths objectAtIndex:0];
    return [documentsDir stringByAppendingPathComponent:@"tourism.sql"];


}

+ (void) copyDatabaseIfNeeded {
    NSFileManager *fileManager = [NSFileManager defaultManager];
    NSError *error;
    NSString *dbPath = [DBAccess getDBPath];
    BOOL success = [fileManager fileExistsAtPath:dbPath];

    if(!success) {

        NSString *defaultDBPath = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"tourism.sql"];
        success = [fileManager copyItemAtPath:defaultDBPath toPath:dbPath error:&error];

        if (!success)
            NSAssert1(0, @"Failed to create writable database file with message '%@'.", [error localizedDescription]);
    }
}

0 个答案:

没有答案
相关问题