Проблема iPhone SQLite3 - «Нет такой колонки» - PullRequest
2 голосов
/ 19 сентября 2009

Когда я запускаю следующий запрос в приложении для iPhone

@"select name, identifier, score, delta from startups order by name ASC"

В моих журналах появляется следующая ошибка:

sqlite error: no such column: score

Однако, выполнение прагмы table_info (запуска) в моей базе данных sqlite3 приводит к следующему:

sqlite> pragma table_info(startups);
0|id|INTEGER|0||1
1|name|TEXT|0||0
2|identifier|TEXT|0||0
3|score|DOUBLE|0|'0'|0
4|delta|DOUBLE|0|'0'|0
5|cached|INTEGER|0|'0'|0

Я несколько раз выполнял сборку и чистку, трижды проверил базу данных и не могу понять, почему появляется эта ошибка. Любая помощь будет потрясающей.

Спасибо, StackOverflow!

Ответы [ 2 ]

4 голосов
/ 19 сентября 2009

Nevermind - проблема заключалась в том, что симулятор iPhone кэшировал базу данных sqlite3. Очистка и сборка не удалили эту кэшированную версию sqlite3. Пришлось вручную зайти и зайти в каталог приложения rm -rf в

/ Пользователи / имя пользователя / Библиотека / Поддержка приложений / iPhone Simulator / Пользователь / Приложения

Затем он был восстановлен, база данных была скопирована, и все было в порядке.

Спасибо за помощь!

0 голосов
/ 19 сентября 2009

Вы пробовали окружать 'партитуры' квадратными скобками? (если это зарезервированное слово):

@"select name, identifier, [score], delta from startups order by name ASC"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...