sqlite3_步骤()不返回SQLITE_OK

sqlite3_步骤()不返回SQLITE_OK,sqlite,Sqlite,我有一个数据库,这是在我的项目中,一个文件localDB.db我希望如何更新其中一个表的一些信息,因为我的应用程序代码我使用的方法如下: -(void)establecePerfil:(int)idPerfil{ while ([Utilidades consultaCargandoDatosDB]) { [NSThread sleepForTimeInterval:1.0]; } [Utilidades cargandoDatos:YES];

我有一个数据库,这是在我的项目中,一个文件localDB.db我希望如何更新其中一个表的一些信息,因为我的应用程序代码我使用的方法如下:

-(void)establecePerfil:(int)idPerfil{

    while ([Utilidades consultaCargandoDatosDB]) {
        [NSThread sleepForTimeInterval:1.0];
    }
    [Utilidades cargandoDatos:YES];

    //perfil = [Perfil getInstance];
    [self cargarBaseDeDatos];

    NSLog(@"entre en establecer perfik");
    sqlite3 *dataBase;
    sqlite3_stmt *sentencia;
    if(sqlite3_open([self.dataBasePath UTF8String], &dataBase)==SQLITE_OK){
        NSLog(@"entre en establecer perfik 2");

        NSString *sql = [NSString stringWithFormat:@"UPDATE perfiles SET \"seleccionado\"= 1, \"completado\"=0 WHERE \"id\"= %d", idPerfil];
        if(sqlite3_prepare_v2(dataBase, [sql UTF8String], -1, &sentencia, NULL)==SQLITE_OK){
            sqlite3_reset(sentencia);
            if(sqlite3_step(sentencia)==SQLITE_OK){
                NSLog(@"set profile OK");

            }
            else{
              //  NSAssert1(0, @"Error while selecting. '%s'", sqlite3_errmsg(dataBase));
            NSLog( @"Save Error: %s", sqlite3_errmsg(dataBase) );
                NSLog(@"%i", sqlite3_extended_errcode(dataBase));
                NSLog(@"%i",sqlite3_errcode(dataBase));
            }


        }
       sqlite3_finalize(sentencia);
    }else{
        NSLog(@"No se ha abierto la base de datos");
    }

    sqlite3_close(dataBase);


    [Utilidades cargandoDatos:NO];
}

我想,我在sqlite3_步骤(判刑)中遇到了问题,因为else条件后出现的代码错误是101引用SQLITE_完成,所以我不知道这意味着什么。

说SQLITE_完成是正确的(SQLITE_OK不会是正确的)。

实际上我用SQLITE_完成替换了SQLITE_OK,错误已解决,但不更新我的数据库这不是论坛。您的问题是关于结果代码的,已经回答了。如果你有不同的问题,请直截了当地问。