我正在为 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。
谢谢。
最佳答案
sqlite3_step(statement)
或 SQLITE_ROW
未初始化,或已被释放。当它对不存在的对象运行相等性检查时,它会抛出 EXE_BAD_ACCESS。
您要返回任何行吗?
关于iphone - sqlite_step(语句)中的 EXC_BAD_ACCESS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10950941/