Android MySQLLite запрос на выбор не работает, не получает результаты из кода - PullRequest
0 голосов
/ 18 апреля 2011

Я занимаюсь разработкой приложения для Android и имею следующий запрос:

result = myDataBase.query(HD_TABLENAME, new String[]{HD_KEYDATE, HD_KEYFESTID},
         "YEAR = "+ year +" AND MONTH = " + month, null, null, null, HD_KEYDATE);

Я написал собственный DataBaseHelper, который вызывает этот запрос.

Приведенные выше результаты приводят к следующему запросу:

SELECT DATE, FESTIVALID FROM HOLIDAYDATES WHERE YEAR = 2010 AND MONTH = 1 ORDER BY DATE

когда я выполняю тот же запрос от администратора SQLLite для того же файла, он возвращает необходимые строки.

Нет исключений, как я могу заставить работать вышеперечисленное. База данных существует и работает для предыдущего запроса. Есть ли какое-либо свойство объекта результата, которое я могу проверить, чтобы увидеть точную ошибку?

НЕ УВЕРЕН, ЕСЛИ ЭТО ПОМОЖЕТ: Сообщение logcat, которое я получаю после выполнения запроса:

04-19 10: 39: 54.803: DEBUG / SntpClient (71): сбой времени запроса: java.net.SocketException: семейство адресов не поддерживается протоколом

РАЗЪЯСНЕНИЯ: Одно из свойств имеет это: result.mStackTrace имеет значение = android.database.sqlite.DatabaseObjectNotClosedException: приложение не закрывало курсор или объект базы данных, который был открыт здесь

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

ДОПОЛНИТЕЛЬНЫЙ ВОПРОС, есть ли способ увидеть открытые соединения с базой данных?

1 Ответ

0 голосов
/ 18 апреля 2011

Использовали ли вы.

dataBase = this.openOrCreateDatabase (dbName, MODE_PRIVATE, null);

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