У меня есть небольшое приложение для Android, и в настоящее время я запускаю SQL-запрос в android, чтобы получить количество строк в базе данных для конкретного предложения where.Ведение журнала SQL в Android; у меня есть приложение
Ниже мой пример кода:
public boolean exists(Balloon balloon) {
if(balloon != null) {
Cursor c = null;
String count_query = "Select count(*) from balloons where _id = ?";
try {
c = getReadableDatabase().rawQuery(count_query, new String[] {balloon.getId()});
if (c.getCount() > 0)
return true;
} catch(SQLException e) {
Log.e("Running Count Query", e.getMessage());
} finally {
if(c!=null) {
try {
c.close();
} catch (SQLException e) {}
}
}
}
return false;
}
Этот метод возвращает мне счетчик 1, даже если таблица базы данных на самом деле пуст. Я не могу понять; почему это произойдет. Запуск одного и того же запроса в базе данных дает мне 0 0.
Мне было интересно, можно ли зарегистрировать или просмотреть в журнале все запросы sql, которые в конечном итоге запускаются после базы данных после замены параметров; так что я могу понять, что происходит не так.
Приветствия
Можно попытаться изменить с = getReadableDatabase() rawQuery (count_query, новый String [] {balloon.getId()}). на несколько строк, каждый из которых делает одну вещь, а затем проверяет каждую строку? –