我想在我的SQLite3应用程序中彻底清除iPhone表中的所有内容。我的MySQL经验告诉我,我应该使用TRUNCATE。但是,SQLite3似乎不支持截断(至少在使用截断my_table_Name语句时准备语句时出现了错误)。
因此,我转到从删除。两个问题: 1)从清理我的表中彻底删除吗? 2)我尝试了下面的代码,它成功了。但我非常怀疑其中是否有不必要的、甚至错误的代码。有人能帮我看看吗?
提前谢谢。
下模
-(void)deleteAllUser {
NSString *ns_sql = [NSString stringWithFormat:@"DELETE FROM %@", [Config USER_TABLE_NAME]];
const char *sql = [ns_sql cStringUsingEncoding:NSUTF8StringEncoding];
sqlite3_stmt *statement = nil;
sqlite3* db = ...; //get the database instance
if(sqlite3_prepare_v2(db, sql, -1, &statement, nil) != SQLITE_OK) {
return;
}
//Without this line, table is not modified
int code = sqlite3_step(statement);
if (code == SQLITE_ROW) {
//Do nothing here...
}
sqlite3_finalize(statement);
}发布于 2010-12-22 06:16:38
我认为
如果(代码== SQLITE_ROW) {//这里什么都不做.}
这段代码应该是
如果(代码== SQLITE_DONE) {//这里什么都不做.}
如果您想得到任何消息,那么您可以从这里返回是,从其他地方返回否(如果您将返回类型更改为BOOL,从void),.This可以帮助您显示消息。
https://stackoverflow.com/questions/4506507
复制相似问题