2011-03-21 8 views
0

테이블에 열 값을 업데이트해야합니다. 내 코드인지에 대한 테이블 값이 업데이트 문을 사용하여 업데이트되지 않았습니다.

NSString *sql_str = [NSString stringWithFormat:@"update %@ Set Quantiry = %@ Where ItemName = %@", tableName,quantity,itemname]; 
    const char *sqlStatement = (char *)[sql_str UTF8String]; 
    NSLog(@"query %s",sqlStatement); 
    sqlite3_stmt *compiledStatement; 

    sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, NULL); 

    sqlite3_close(database); 

콘솔에서 쿼리를 표시 update allcategories Set Quantiry = 11 Where ItemName = Bananas

하지만 테이블의 값이 업데이트되지 않습니다.

무엇이 잘못 되었습니까, 어느 누구도 나를 도와주세요.

미리 감사드립니다.

답변

0

sqlite3_prepare_v2 다음에 한 줄 빠져 있습니다. 이 후에 sqlite3_step()을 사용해야합니다. 다음을 사용

NSString *sql_str = [NSString stringWithFormat:@"update %@ Set Quantiry = %@ Where ItemName = %@", tableName,quantity,itemname]; 
const char *sqlStatement = (char *)[sql_str UTF8String]; 
NSLog(@"query %s",sqlStatement); 
sqlite3_stmt *compiledStatement; 

if(sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, NULL) == SQLITE_OK) { 
sqlite3_step(compiledStatement); 
} 

sqlite3_close(database); 

희망이 도움이 .. :)

관련 문제