SQLITE3 step () возвращает SQLITE_DONE для таблицы с одной строкой - PullRequest
0 голосов
/ 23 декабря 2010

Я выполняю проверку SELECT для базы данных sqlite3. Когда результатом должна быть первая строка в таблице, возвращаемое значение всегда SQLITE_DONE вместо SQLITE_ROW, и я не могу получить результат.

do  {
ret.error = sqlite3_step(stmt);
debug("error: %d",ret.error);
if(ret.error == SQLITE_ROW)
{
  [...]
} } while(ret.error != SQLITE_ERROR && ret.error != SQLITE_DONE && 
ret.error != SQLITE_MISUSE);

Может кто-нибудь сказать мне, что я делаю не так? (Запрос правильный ...)

Ответы [ 2 ]

0 голосов
/ 10 сентября 2014

Введите:

sqlite3_finalize(statement);

после While Loop .

0 голосов
/ 19 августа 2011

Переход с конфигурации «Отладка» на «Выпуск» решил проблему для меня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...