2010-10-11 3 views
0

Я пытаюсь выполнить запрос к моей базе данных, чтобы он возвращал только строки с определенным значением в определенном столбце. Но когда я его запускаю, он все равно возвращает все строки. пожалуйста, взгляните на код и посмотрите, не сделал ли я это неправильно. Я пытаюсь запросить строку в столбце PRIORITY. Я хочу отобразить эти конкретные строки в списке. Спасибо.столбцы таблицы запросов для конкретных значений данных в sqlite android

Значения для приоритетных столбцов могут быть «Низкий», «Средний» или «Высокий». Я пытаюсь запросить базу данных, чтобы возвращать строки, значения которых заданы как «Высокий» в столбце PRIORITY.

+0

Вы не предоставили нам со схемой базы данных или значения большинства констант в вашем фрагменте кода. – CommonsWare

+0

Мне жаль, я не уверен, что вы на самом деле имеете в виду. но константы - это столбцы для таблицы базы данных. Я отредактировал мой вопрос выше, если вы это понимаете. но если вам требуется что-то другое, пожалуйста, дайте мне знать. Еще раз спасибо – Rexx

+1

Я еще не работал с db в андроиде, но вам нужно пробел после символа '=': KEY_ID + "=?" –

ответ

1

Я пытаюсь запросить строку в столбце ПРИОРИТЕТ ...

Таким образом, ваш фильтр должен быть

PRIORITY + " = ?"

вместо

KEY_ID + "=" + "?"

Также не рекомендуется иметь текстовый столбец для хранения значений из ограниченного набора возможностей, которые вы затем фильтруете, а ваш последний, если не имеет смысла.

+0

Эй, спасибо, все работает! если у вас есть время, не могли бы вы рассказать мне, почему не рекомендуется иметь текстовые значения для хранения столбцов. Как я уже сказал, я слишком хорошо разбираюсь в sql; поэтому все походит на то, чтобы учиться для меня. Пожалуйста, проигнорируйте оператор if, была ошибка в моей части. еще раз спасибо – Rexx

1

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

Так это должно выглядеть примерно так:

priority ENUM('LOW','MEDIUM','HIGH') NOT NULL DEFAULT 'MEDIUM' 
Смежные вопросы