我需要将列值更新为表格。
我的代码是,
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 :(得分: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);
希望帮助.. :)