У меня есть метод, который по существу делает следующее:Закрытие DataSource и использование курсора
Cursor cursor;
cursor = myCard.queryRandomCard(this);
cursor.moveToFirst();
В методе queryRandomCard:
DataSource datasource = new DataSource(context);
datasource.open();
Cursor cursor = (SQL STATEMENT IS HERE AND WORKS);
datasource.close();
return cursor;
проблема заключается в том, что после retutn я получаю сообщение об ошибке при выполняя «cursor.moveToFirst()», в котором говорится, что «пул соединений был закрыт». ОДНАКО, если я удалю вызов «datasource.close()», тогда он отлично работает.
Мой вопрос: почему закрытие базы данных влияет на возвращаемый курсор? Связаны ли эти два человека ближе, чем я понял?
Спасибо
хорошо там вы идете. Я думал, что он вернул весь набор. Это также означает, что до тех пор, пока вы используете один и тот же курсор, который должен иметь тот же объект DataSource, верно? – gjnave
Вправо курсор связан с объектом DataSource, который его создал. Курсор использует объект DataSource для получения информации о базе данных и получения результатов. – Idipaolo