Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
sqlite数据库可以在iPhone模拟器上正常打开,但不能在设备上打开_Iphone_Database_Sqlite_Ios Simulator - Fatal编程技术网

sqlite数据库可以在iPhone模拟器上正常打开,但不能在设备上打开

sqlite数据库可以在iPhone模拟器上正常打开,但不能在设备上打开,iphone,database,sqlite,ios-simulator,Iphone,Database,Sqlite,Ios Simulator,为什么这在iPhone模拟器上运行良好。。。但数据库不可能是 在iPhone设备上打开 sqlite3 *g_Db = nil; BOOL OpenDatabase(NSString *databaseName) { if(sqlite3_open([databaseName UTF8String], &g_Db) == SQLITE_OK) { NSLog(@"Opened db ok"); return(YES); }

为什么这在iPhone模拟器上运行良好。。。但数据库不可能是 在iPhone设备上打开

sqlite3 *g_Db = nil;

BOOL OpenDatabase(NSString *databaseName)
{
    if(sqlite3_open([databaseName UTF8String], &g_Db) == SQLITE_OK)
    {
        NSLog(@"Opened db ok");
        return(YES);
    }
    else
    {
        NSLog(@"Can't open the db");
        sqlite3_close(g_Db);
        g_Db = nil;
        return(NO);
    }
}

如果数据库还不存在,并且您正在使用SQLite的功能在第一次引用时创建数据库,那么文件路径必须指向iPhone的文档目录(或tmp),因为您可以在模拟器中写入应用程序包目录,但由于权限的原因,无法在设备上写入。这是唯一一件让我吃惊的事情,因为这两件事明显不同,这会影响SQLite代码

啊。。。我忘了。让我查一下。。。但我敢打赌就是这样。