Datenbank Problem, Prüfen auf leere Tabelle

G

Garnet

Ambitioniertes Mitglied
1
Hallo, ich hab folgendes Problem mit meiner Datenbank. Unten stehende for-Schleife soll nur ausgeführt werden wenn die Tabelle leer ist. Kann mir da einer helfen wie ich das machen kann?

private void createTables()
{
appDB = openOrCreateDatabase(MY_DB_NAME, MODE_PRIVATE, null);
appDB.execSQL("CREATE TABLE IF NOT EXISTS `favoriten` (`itemposdb` integer primary key, `checkfav` integer);");


//for-schleife soll nur ausgeführt werden wenn Tabelle leer ist

for (int i = 0; i<11; i++)
{

appDB.execSQL("INSERT OR IGNORE INTO "+MY_DB_TABLE+" (itemposition, checkfav) "+"VALUES ('"+i+"',"+ "'"+0+"');");
}

}
 
Bin selbst Anfänger (in Android/Java), vielleicht geht es auch einfacher. Aber du kannst mit appDB.query eine Select-Anweisung abschicken, die ein Cursor-Objekt zurückgibt. Und wenn cursor.getCount() dann 0 zurückliefert sollte die Tabelle leer sein.

Ohne Garantie weil ungetestet:
Code:
        Cursor meinCursor = 
            appDB.query("tabelle", 
                             new String[] {"feld1","feld2"}, //null für alle Spalten
                             "", // WHERE
                             null, // argumente für WHERE
                             null, // GROUP BY
                             null, // HAVING
                             "");  // ORDER BY
        
        meinCursor.getCount(); // Anzahl der Rückgabewerte
 

Ähnliche Themen

R
Antworten
6
Aufrufe
1.016
swa00
swa00
S
Antworten
33
Aufrufe
2.674
Sempervivum
S
M
  • MikelKatzengreis
Antworten
5
Aufrufe
134
swa00
swa00
Zurück
Oben Unten