2012-08-12 82 views
0

我有这个问题....下面的代码不会产生错误,但表格不会改变! 我控制了所有的日志,所有的值都是正确的,所有的如果测试没有问题,但是db上的值没有改变。 有人有想法? 谢谢!!SQLite:更新命令不改变值

- (void) saveData { 
    //database file system 
    NSFileManager *fileMgr = [NSFileManager defaultManager]; 
    NSString *dbPath = [[[NSBundle mainBundle] resourcePath ]stringByAppendingPathComponent:@"enduroRace.sqlite"]; 
    BOOL success = [fileMgr fileExistsAtPath:dbPath]; 
    if(!success) 
    { 
     NSLog(@"unable to load db: '%@'.", dbPath); 
    } 
    //apro database 
    sqlite3 *db; 
    if(!(sqlite3_open([dbPath UTF8String], &db) == SQLITE_OK)) 
    { 
     NSLog(@"unable to open DB"); 
    } 
    //inizio query 
    sqlite3_stmt *statement; 
    NSString *querySQL = @"UPDATE setting SET delay=?"; 
    const char *query_stmt = [querySQL UTF8String]; 
    if (sqlite3_prepare_v2(db, query_stmt, -1, &statement, NULL) == SQLITE_OK) { 
     int valoreAttuale = [[sharedClass sharedController] ritardoMusic]; 
     sqlite3_bind_int(statement, 1,valoreAttuale); 
    } 
    if (sqlite3_step(statement) != SQLITE_DONE) 
    { 
     NSLog(@"Error..."); 
    } 
    sqlite3_finalize(statement); 
    sqlite3_close(db); 

} 

回答

0

我明白了....我已将Sqlite db复制到'Documents'文件夹中,该文件夹不仅是只读的,而且现在是完美的!感谢我!