2012-02-08 2 views
0

Я использую sqlite для моего простого приложения для iOS. Проблема в том, что я не могу получить результат запроса. Я пропущу код, который отвечает за открытие базы данных. Оно работает.Не удается получить данные - sqlite3

NSString *query = @"SELECT * FROM tickets LIMIT 0,1"; 

if(sqlite3_prepare_v2(database, [query UTF8String], -1, &statement, nil) == SQLITE_OK) 
    { 
    NSString *strResult = [NSString stringWithUTF8String:(char *)sqlite3_column_text(statement, 1)]; 
      NSLog(@"%@", strResult); 
      sqlite3_finalize(statement); 
    }  

Здесь приложение аварии с сообщением:

NSInvalidArgumentException', reason: '*** +[NSString stringWithUTF8String:]: NULL cString' 

Я 100% уверен, что запрос

SELECT * FROM tickets LIMIT 0,1 

возвращать результат, который не является NULL. Я протестировал запрос выше с помощью клиента sqlite, и он отлично работает.

Что здесь не так?

ответ

2

Вы не оценили свое заявление. Вы должны использовать:

int sqlite3_step(sqlite3_stmt*); 

после sqlite3_prepare_v2.

+0

Большое спасибо. Это сделал трюк! – objlv

Смежные вопросы