Tôi đang sử dụng cơ sở dữ liệu sqlite cho ứng dụng iphone. nhưng sự cố của nó trên đường "while while" trong khi truy xuất dữ liệu từ cơ sở dữ liệu đôi khi.EXC_BAD_ACCESS bằng sqlite_step (tuyên bố)
-(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);
}
lý do tại sao tôi nhận được vòng lặp EXC_BAD_ACCESS này trong khi đó.
Cảm ơn.
Cảm ơn bạn đã trả lời. Tôi chỉ sử dụng mã trên được đề cập trong câu hỏi của tôi. vì vậy sqlite3_step (statement) được khởi tạo và sqlite_row là một hằng số. Và chúng chưa được phát hành. – iDilip
'SELECT * FROM errorlogs' có trả về bất kỳ hàng nào không? Nếu các bản ghi lỗi trống, bạn có thể so sánh với không có gì, điều này sẽ gây ra lỗi. –