Ich habe eine DatabaseHelper-Klasse, die SQLiteOpenHelper erweitert, was ist eine gute Übung zur Verwendung des DBHelper, um Datenextraktionen durchzuführen?Was ist eine gute Praxis für die Verwendung eines DBHelper (SQLite) auf Android-Anwendungen
In meiner DatabaseHelper-Klasse habe ich eine Methode, mit der ich die Ergebnisse einer Abfrage wie "Select * FROM ....." abrufen kann. Die Ergebnisse werden von vielen anderen Klassen verwendet.
Beispiel:
Cursor getAllWhitelist(){
SQLite Database db=this.getWritableDatabase();
Cursor cur = db.rawQuery("Select * from WhiteList");
return cur;
}
Soll ich einen Cursor zu diesem Zeitpunkt zurückkommen? Ist es empfehlenswert? Oder sollte ich eine ArrayList oder ähnliches zurückgeben?
Wie geht es euch?
Das Zurückgeben eines Cursors ist in Ordnung, Sie müssen nur sicherstellen, dass Sie einen 'startManagingCursor (cursor)' -Aufruf in Ihrer Aktivität hinzufügen, sobald der Cursor an ihn zurückgegeben wurde. Sie benötigen einen Cursor, der nicht geschlossen ist, wenn Sie ihn in einem 'SimpleCursorAdapter' verwenden möchten. –
Danke @Austyn Mahoney für diese Information. Ich habe meine Antwort bearbeitet. –