我想更新我的 sqlite 数据库,但我找不到方法,以下是代码:
const char *sqlStatement = "UPDATE frame SET fileExist = '1' WHERE name='$variable'";
if(sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, NULL) == SQLITE_OK) {
NSLog(@"successupdate");
}
从上面的代码中,我希望我的表更新,其中名称等于 $variable name;如何实现?
最佳答案
你快到了。
const char *sqlStatement = "UPDATE frame SET fileExist = '1' WHERE name=?";
sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, NULL);
sqlite3_bind_text(sqlStatement, 1, variable, -1, SQLITE_TRANSIENT);
int success = sqlite3_step(sqlStatement);
sqlite3_reset(sqlStatement);
请注意,准备 SQL 语句只会告诉 SQLite 语句是什么样的。
sqlite3_bind_text
将变量应用于 SQL 语句和实际运行它的 sqlite3_step
行。关于iphone - 如何在iphone中更新sqlite3数据库,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/905273/