Проблема с запросом Sqlite

#database #sqlite

#База данных #sqlite

Вопрос:

я делаю проект Android с использованием базы данных sqlite, в запросе select у меня ошибка, связанная с исключением курсора (0), мой запрос :

 Cursor c = myDB.rawQuery("SELECT * FROM COMPDETAIL WHERE city='Bangalore' AND service='Hospital';");
  

путем замены И ИЛИ если это работает..

что я должен делать, если я хочу выполнить компиляцию по нескольким условиям…

Заранее спасибо,

Ответ №1:

используйте moveToFirst():

 if (c != null) { 
  if (c.moveToFirst()) {
    do { ...
  

Ответ №2:

Вы уверены, что такая строка (с city = ‘Bangalore’ и service = ‘Hospital’) существует в вашей базе данных? AND это совершенно законное ключевое слово в SQLite, нет никаких причин, по которым оно не работало бы и OR будет … если только нет строки, соответствующей обоим критериям, и вы все еще пытаетесь ее извлечь — что приведет к чему-то вроде исключения «за пределами границ». Вне границ.