выбор между запросом или повторный запуск запроса в SQLite - PullRequest
2 голосов
/ 19 июня 2010

Я использую базу данных SQLite. Ситуация, когда у меня есть список, который отображает все данные поля «name» таблицы «table1». Теперь у меня есть кнопка для вставки данных в «table1». Список заполняется с помощью простого курсорного адаптера, которому передается курсор «cursor1», заполненный данными. «cursor1» подготовлен с использованием запроса SQLite - «SELECT * FROM table1». Теперь, когда я вставляю данные, мне тоже нужно обновить список.

Мой вопрос-

  1. Адаптер почувствует, что база данных автоматически изменится (наверное, нет)?
  2. с использованием cursor1.requery() правильно или я должен использовать cursor1 = db.query("table1", null, null, null, null, null, null);

Было бы полезно, если бы вы могли пролить свет на то, какой из них лучше и в какой ситуации. Для ситуации, которую я объяснил выше, команда requery() не дает действительного результата, в то время как последующая 1 работает нормально. до сих пор не могу понять, в чем может быть проблема.

1 Ответ

1 голос
/ 19 июня 2010

будет ли адаптер воспринимать изменение базы данных автоматически (я думаю, нет)?

Нет, Adapter не будет определять изменение базы данных автоматически.

использование cursor1.requery () является правильным или я должен использовать cursor1 = db.query ("table1", ноль, ноль, ноль, ноль, ноль, ноль);

Использовать requery(), Вот пример проекта из одной из моих книг, демонстрирующих технику.

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