gpt4 book ai didi

ios - Xcode : sqlite3_step returning 101, 但不在 block 内执行代码

转载 作者:行者123 更新时间:2023-11-29 10:37:05 25 4
gpt4 key购买 nike

如果 sqlite3_step 语句返回 101,我有一段代码要执行,但即使是,代码块中的代码也会被跳过。为什么会这样?

sqlite3_stmt *statement;
if (sqlite3_open([dbPathString UTF8String], &database) == SQLITE_OK) {
NSLog(@"Value: %li",(long)sender.tag);
NSString *delete_feed = [NSString stringWithFormat:@"DELETE FROM user_data WHERE id = %li", (long)sender.tag];
if (sqlite3_prepare_v2(database, [delete_feed UTF8String], -1, &statement, NULL) == SQLITE_OK) {
NSLog(@"%d", sqlite3_step(statement));
if (sqlite3_step(statement) == SQLITE_DONE) { <== MY ISSUE
NSLog(@"Got here"); <== NEVER GETS HERE
for (UIView *subview in [self.view subviews]) {
if (subview.tag == 2) {
[subview removeFromSuperview];
[self createListPage];
}
}
sqlite3_finalize(statement);
sqlite3_close(database);
}
}
}

最佳答案

您正在调用 sqlite3_step 两次。我认为第一次是 SQLITE_DONE (101),但第二次(当你进入你的 block 时),它返回了一些其他错误代码。

可以尝试类似(伪代码)

    int ret_code = sqlite3_step(statement);
NSLog(@"ret_code=[%d]", ret_code);
if(ret_code == SQLITE_DONE) {
// do some stuff here...
}

关于ios - Xcode : sqlite3_step returning 101, 但不在 block 内执行代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26344349/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com