如何在iphone中更新sqlite3数据库

3 database iphone

我想更新我的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");
}
Run Code Online (Sandbox Code Playgroud)

从上面的代码我希望我的表更新名称等于$ variable name;如何实现这一点?

Ste*_*ton 11

你快到了.

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);
Run Code Online (Sandbox Code Playgroud)

请注意,准备SQL语句只会告诉SQLite语句是什么样的.它将sqlite3_bind_text变量应用于SQL语句和sqlite3_step实际运行它的行.