SQLite
 sql >> Baza danych >  >> RDS >> SQLite

Close nigdy nie zostało wyraźnie wywołane w bazie danych

Zamknij swój cursor za każdym razem po użyciu problem zostanie rozwiązany

itemsCursor.close()

Ponieważ tego nie zamykasz, zasoby kursora nie są zwalniane z tego powodu, gdy zamykasz bazę danych, otrzymujesz ten błąd.

Ustaw kursor jako zmienną globalną, a następnie na swoim onDestroy

@Override
protected void onDestroy() {
    super.onDestroy();
    itemsCursor.close();
    db.close();
}

A ponieważ teraz dodajesz close oświadczenie jako ostatnia instrukcja filldata metoda, Adapter z listview nie pobiera żadnych danych jako cursor jest już wydany z tego powodu nie otrzymujesz żadnych danych w listview .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQLite ISTNIEJE

  2. Android ListView:jak uniknąć zapytań do bazy danych w bindView()? Musisz pobrać od jednego do wielu danych o relacjach

  3. Jak wyodrębnić dzień, miesiąc i rok z daty w SQLite?

  4. SQL:Sortuj według priorytetu, ale wstaw 0 na końcu

  5. Jak uniknąć używania + w numerze wersji z SQLiteAssetHelper?