iphone - sqlite_step(语句)中的 EXC_BAD_ACCESS

标签 iphone xcode sqlite crash exc-bad-access

我正在为 iphone 应用程序使用 sqlite 数据库。但它有时会在从数据库中检索数据时在“while 循环”行崩溃。

-(void)GetMethod
{

    NSString *query = [[NSString alloc] initWithFormat:@"SELECT * FROM errorlogs"];
    sqlite3_stmt *statement;    
    if (sqlite3_prepare_v2(database, [query UTF8String],-1, &statement, nil) == SQLITE_OK) 
    {
        while (sqlite3_step(statement) == SQLITE_ROW) **// EXC_BAD_ACCESS ON THIS LINE**
        { 
            char *uid1 = (char *)sqlite3_column_text(statement, 0);
            NSString *uid = [NSString stringWithFormat:@"%s",uid1];
        }
    }
    sqlite3_finalize(statement);
}

为什么我在 while 循环中得到这个 EXC_BAD_ACCESS。

enter image description here 谢谢。

最佳答案

sqlite3_step(statement)SQLITE_ROW 未初始化,或已被释放。当它对不存在的对象运行相等性检查时,它会抛出 EXE_BAD_ACCESS。

您要返回任何行吗?

关于iphone - sqlite_step(语句)中的 EXC_BAD_ACCESS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10950941/

相关文章:

ios - 当结果不匹配时,搜索栏过滤器不会清除表格

ios - 在 UIwebview swift iOS 中加载二维码链接

android - 来自 Activity 和服务的 SQLite 使用

java - 如何在 Android 模拟器上访问现有的 sqlite 数据库?

ios - 我的第 3 方 iOS 应用程序会自动向 Apple Watch 发送通知吗?

iphone - objective-c int 进行双重计算

iphone - 关联对象何时被释放?

排除因内存导致的 iPhone/iPad 设备崩溃问题

objective-c - 类别实例方法不调用

Android 房间数据库错误 : Unused parameter: days in @Query function