SQL курсоры в Android - PullRequest
       1

SQL курсоры в Android

1 голос
/ 09 марта 2011

Предположим, я запустил какой-то запрос и получил курсор, который я хочу использовать для обновления записей в базе данных. Что происходит, если база данных обновляется, когда курсор не закрыт? Например, предположим, что курсор указывает на 1-ю запись в наборе результатов, и я запускаю запрос, который обновляет 10-й элемент. Текущий курсор отражает эти изменения?

Ответы [ 2 ]

4 голосов
/ 09 марта 2011

Вам необходимо позвонить cursor.requery(), чтобы перезагрузить изменения из базы данных.

2 голосов
/ 09 марта 2011

Курсор является копией результатов в памяти, поэтому вы можете изменить базу данных по своему усмотрению. Поскольку это копия, она не будет отражать какие-либо изменения - для этого вам потребуется запрос.

Однако абсолютно необходимо, чтобы вы закрыли его как можно скорее, чтобы сэкономить память и чтобы приложение не зависало при переключении действий.

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