Hallo,
ich habe in meinem Programm eine SQL Datenbank angelegt, die die Spalten "name", "phase" und einen primary key hat.
Ich will nun herausfinden, wie viele Einträge in dieser Datenbank zum einen:
- eine bestimmtePhase haben und gleichzeitig
- einen key haben, der in einem int[] Array enthalten ist.
Mein bisheriger Ansatz:
Der Fehler sieht dann so aus:
Caused by: android.database.sqlite.SQLiteException: no such table: 1, 2, 3, 4, 5 (code 1): , while compiling: SELECT * FROM cards WHERE phase='1' AND type in [1, 2, 3, 4, 5]
Jetzt wären meine Fragen:
1. Wie kann ich prüfen, ob der Eintrag "phase" der Datenbank im array enthalten ist?
2. Gibt es eine elegantere Methode die Anzahl der passenden Einträge festzustellen? So wie es hier steht funktioniert es zwar (ohne den AND Zusatz in der Query), aber es kommt mir etwas klobig vor...
Schonmal vielen Dank für Eure Zeit und Hilfe
ich habe in meinem Programm eine SQL Datenbank angelegt, die die Spalten "name", "phase" und einen primary key hat.
Ich will nun herausfinden, wie viele Einträge in dieser Datenbank zum einen:
- eine bestimmtePhase haben und gleichzeitig
- einen key haben, der in einem int[] Array enthalten ist.
Mein bisheriger Ansatz:
Java:
int [] array = new int[] {1,2,3,4,5};
String ids = array.toString();
ids.replace("[","(").replace("]",")");
int i = 2;
int count;
Cursor c = database.rawQuery("SELECT * FROM cards WHERE phase='"+i+"' AND type in "+ids+"",null);
if (c.moveToFirst()){
count=c.getCount();
}else{
count=0;
}
Der Fehler sieht dann so aus:
Caused by: android.database.sqlite.SQLiteException: no such table: 1, 2, 3, 4, 5 (code 1): , while compiling: SELECT * FROM cards WHERE phase='1' AND type in [1, 2, 3, 4, 5]
Jetzt wären meine Fragen:
1. Wie kann ich prüfen, ob der Eintrag "phase" der Datenbank im array enthalten ist?
2. Gibt es eine elegantere Methode die Anzahl der passenden Einträge festzustellen? So wie es hier steht funktioniert es zwar (ohne den AND Zusatz in der Query), aber es kommt mir etwas klobig vor...
Schonmal vielen Dank für Eure Zeit und Hilfe