Ошибка Android в выборе запроса
-
11-12-2019 - |
Вопрос
Ниже приведен мой метод базы данных, который вызывает проблему:
public Cursor fetchRecord(String pin,String category)throws SQLException
{
Cursor c=mDb.query(DATABASE_TABLE, new String[]
{KEY_ROWID,KEY_NAME,KEY_PHONE,KEY_CATEGORY,KEY_PINCODE},
KEY_PINCODE + "= ?" + "AND" + KEY_CATEGORY + "= ?",
new String[]{pin,category}, null, null, KEY_NAME);
if (c!= null) {
c.moveToFirst();
}
return c;
}
.
Это становится силой, всякий раз, когда я даю ввод и нажмите кнопку GO в первой активности Журнал Cat говорит:
Caused by: android.database.sqlite.SQLiteException: near "ANDcategory": syntax error: , while compiling: SELECT _id, name, phone, category, pincode FROM details WHERE pincode= ?ANDcategory= ? ORDER BY name
. Решение
Должен быть пробел между PINCODE & CATIOR, в вашем пункте оттуда.
Просто заменить
"AND"
.
с
" AND "
public Cursor fetchRecord(String pin,String category)throws SQLException
{
Cursor c=mDb.query(DATABASE_TABLE, new String[]
{KEY_ROWID,KEY_NAME,KEY_PHONE,KEY_CATEGORY,KEY_PINCODE},
KEY_PINCODE + "= ?" +
" AND " + KEY_CATEGORY + "= ?",new String[]{pin,category}, null, null, KEY_NAME);
if (c!= null) {
c.moveToFirst();
}
return c;
}
. Другие советы
Прочитайте исключение, он говорит вам все, что вам нужно знать:
syntax error: , while compiling: SELECT _id, name, phone, category, pincode FROM details WHERE pincode= ?ANDcategory= ? ORDER BY name
. Не связан с StackOverflow