Не удается разрешить символ «Активный» - PullRequest
0 голосов
/ 04 июля 2018

Я новичок в Android, здесь мне нужно получить все значения столбцов, где статус «Активен». Но я не мог понять формирование запросов SQLite.

Это немного отличается от запросов MSSQL.

Вот мой запрос с ошибкой «не удается разрешить символ»

        Cursor cursor = sqLiteDatabase.rawQuery("SELECT * FROM " + TABLE_NAME, "WHERE ALARM_STATUS = + "Active" ");

скажите, пожалуйста, где я совершил ошибку.

Ответы [ 2 ]

0 голосов
/ 04 июля 2018

Попробуйте это ...

Cursor cursor= sqLiteDatabase.rawQuery("SELECT ALARM_STATUS FROM TABLE_NAME WHERE ALARM_STATUS= ?", new String[] {"Active"});
0 голосов
/ 04 июля 2018

Насколько я вижу, у вас 3 ошибок в вашем запросе:

Cursor cursor = sqLiteDatabase.rawQuery("SELECT * FROM " + TABLE_NAME, "WHERE ALARM_STATUS = + "Active" ");

Должно быть

Cursor cursor = sqLiteDatabase.rawQuery("SELECT * FROM " + TABLE_NAME + " WHERE ALARM_STATUS = 'Active'");

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

Кроме того, перед предложением WHERE отсутствовал обязательный пробел.

А остальная часть строки запроса была неправильной (сравните ваш синтаксис с моим).

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