Синтаксическая ошибка rawQuery () - PullRequest
0 голосов
/ 05 сентября 2011

Я хочу выполнить следующий запрос SQL, используя rawQuery () SQLite в Android.
Но я получаю
"android.database.sqlite.SQLiteException: вблизи" status ": синтаксическая ошибка:, при компиляции:выберите emp_id, start_date, end_date fromleave_plans1where status =? "

SQL-запрос: выберите emp_id, start_date, end_date из столбцов увольнения, где статус = "утвержден" или статус = "ожидает"

и rawQuery, которые я использовал:

db.rawQuery("select emp_id,start_date,end_date from" + TABLE_NAME + "where status = ?",new String[] {"approved","pending"});  

Пожалуйста, помогите

Спасибо
Снеха

Ответы [ 3 ]

1 голос
/ 05 сентября 2011

Попробуйте этот код:

String[] columns = { "emp_id", "start_date", "end_date" };
String[] whereArguments = { "approved", "pending" };
Cursor cursor = db.query(TABLE_NAME, columns, "status = ? OR status = ?", whereArguments, null, null, null);

В третьем аргументе при вызове query необходимы два знака вопроса, поскольку каждый символ ? ссылается на один элемент в массиве whereArguments.Таким образом, этот вызов будет преобразован в:

SELECT emp_id, start_date, end_date FROM {TABLE_NAME} WHERE status = «утверждено» ИЛИ status = «ожидает рассмотрения»;

(где {TABLE_NAME} явно будетзамените его любой строковой константой.)

0 голосов
/ 12 февраля 2014

для строковых значений он должен иметь статус = «утвержден»

нравится это 'BID'

db_obj.rawQuery ("выберите page_no из BOOK_MARKS, где page_no =" + page + "и book_id =" + "'" + BID + "'", null);

0 голосов
/ 05 сентября 2011
String status="approved";
db.rawQuery("select emp_id,start_date,end_date from " + TABLE_NAME + " where status = '"+status+"'",new String[] {"approved","pending"});

или

db.rawQuery("select emp_id,start_date,end_date from " + TABLE_NAME + " where status = 'approved'",new String[] {"approved","pending"});

Я не понимаю, почему вы так используете

Вы можете использовать

return db.query(TABLE_NAME, new String[] {emp_id,start_date,end_date

        },status +"='"+status+"'", null, null, null, null); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...