J
Jusehr
Neues Mitglied
- 0
Im Rahmen meines Projekts versuche ich nun, per SQLite auf die Daten einer Datenbank zuzugreifen.
Es handelt sich noch um unausgereiften Testcode. Mir geht es dabei zunächst nur darum, eine erfolgreiche Datenübermittlung hinzukriegen.
Die MainActivity dürfte alle notwendigen Imports beinhalten.
Ganz zu Beginn derselben definiere ich meine Helfer-Klasse:
In Oncreate erfolgt dann auch:
In diese obige Zeile setzte ich auch meinen Breakpoint.
Der Beginn meiner DBHelper-Klasse:
Dieser Konstruktor wird fehlerfrei durchlaufen.
Die nächste Zeile in der OnCreate der MainActivity lautet:
Der dazugehörige Code in der DBHelper-Klasse:
Der Fehler wird scheinbar in der Zeile mit dem SQL-Kommando ausgelöst. Angeblich wird die Tabelle Infos nicht gefunden:
android.database.sqlite.SQLiteException: no such table: Infos (code 1): , while compiling: select * from Infos
Die Datenbank Test1.db3 habe ich über den Android Device Monitor unter data/data/PackageName etc. eingefügt.Diese enthält eine einzige Tabelle mit dem Namen Infos.
Und nun - nach dem ca. dritten Anlauf des Debuggers - hängt das Ganze wieder (Gradle Sync seit 12 Minuten). Das macht keinen Spaß mehr! Ich habe den Verdacht, dass Android Studio relativ instabil ist. Auf Eclipse möchte ich aber auch nicht mehr umsteigen. Mit NetBeans soll man wohl auch Android-Projekte anlegen können ...
Es handelt sich noch um unausgereiften Testcode. Mir geht es dabei zunächst nur darum, eine erfolgreiche Datenübermittlung hinzukriegen.
Die MainActivity dürfte alle notwendigen Imports beinhalten.
Ganz zu Beginn derselben definiere ich meine Helfer-Klasse:
Java:
DBHelper mydb;
Java:
mydb = new DBHelper(this);
In diese obige Zeile setzte ich auch meinen Breakpoint.
Der Beginn meiner DBHelper-Klasse:
Java:
public class DBHelper extends SQLiteOpenHelper {
public static final String DATABASE_NAME = "Test1.db3";
public static final String CONTACTS_TABLE_NAME = "Infos";
public static final String CONTACTS_COLUMN_NAME = "field2";
public DBHelper(Context context)
{
super(context, DATABASE_NAME , null, 1);
}*
Die nächste Zeile in der OnCreate der MainActivity lautet:
Java:
ArrayList array_list = mydb.getAllCotacts();
Java:
public ArrayList getAllCotacts()
{
ArrayList array_list = new ArrayList();
SQLiteDatabase db = this.getReadableDatabase();
Cursor res = db.rawQuery( "select * from Infos", null );
res.moveToFirst();
while(res.isAfterLast() == false){
array_list.add(res.getString(res.getColumnIndex(CONTACTS_COLUMN_NAME)));
res.moveToNext();
}
return array_list;
}
android.database.sqlite.SQLiteException: no such table: Infos (code 1): , while compiling: select * from Infos
Die Datenbank Test1.db3 habe ich über den Android Device Monitor unter data/data/PackageName etc. eingefügt.Diese enthält eine einzige Tabelle mit dem Namen Infos.
Und nun - nach dem ca. dritten Anlauf des Debuggers - hängt das Ganze wieder (Gradle Sync seit 12 Minuten). Das macht keinen Spaß mehr! Ich habe den Verdacht, dass Android Studio relativ instabil ist. Auf Eclipse möchte ich aber auch nicht mehr umsteigen. Mit NetBeans soll man wohl auch Android-Projekte anlegen können ...