Отличия в sqlite на симуляторе / устройствах - PullRequest
0 голосов
/ 04 марта 2011

У меня есть приложение, извлекающее информацию из базы данных SQLite.Он отлично работает на симуляторе iPhone, но я ничего не получаю при тестировании на устройстве.Есть ли различия в использовании базы данных между ними?Я попытался осмотреться и не могу найти ничего, что помогает.Я вижу, что эта проблема часто встречается в Google, я просто не нашел решения, которое помогло бы мне.

Я установил точки останова и попытался отладить это, на реальном устройстве оно никогда не передается while (sqlite3_step(statement) == SQLITE_ROW), оно всегда возвращает SQLITE_DONE.Я не могу понять, почему это изменится на устройстве.Буду признателен за любую помощь, советы по SQLite, или, если код может быть улучшен и т. Д. Спасибо.

NSString *qsql = @"SELECT Distinct State FROM School";
    sqlite3_stmt *statement;

    if (sqlite3_prepare_v2(db, [qsql UTF8String], -1, &statement, nil) == SQLITE_OK) 
    {
        while (sqlite3_step(statement) == SQLITE_ROW) 
        {
            char *colState = (char *) sqlite3_column_text(statement, 0);
        NSString *state = [[NSString alloc] initWithUTF8String:colState];

        [states addObject:state];
        [state release];
    }
    sqlite3_reset(statement);
}
return states;

}

1 Ответ

1 голос
/ 04 марта 2011

Первое, что приходит в голову, это то, что база данных правильно установлена ​​на симуляторе, а не на телефоне.

Проверьте этот ответ , чтобы увидеть, поможет ли он вам.

...