"no such table" und jetzt

  • Also folgendes Problem. Ich möchte mit einem Datenbank Adapter alle elemente ausgeben lassen und in eine list view schriben. Eigendlich einfach.
    Hier der Code aus der main activity:

    Java
    Log.i("fillList", "(2)");
            mSutureCursor = mSDbHelper.fetchAllSuture();
            Log.i("fillList", "(2.1)");
            startManagingCursor(mSutureCursor);
            String[] fromB = new String[]{DbAdapter_Suture.KEY_TITLE};
            int[] toB = new int[]{R.id.text2}     ;  
            SimpleCursorAdapter notesB = 
            	    new SimpleCursorAdapter(this, R.layout.row_suture, mSutureCursor, fromB, toB);
            ListView Roter_Faden = (ListView) findViewById(R.id.pe_LV_020);
    		Roter_Faden.setAdapter(notesB);


    So weit so gut. Wenn ich jetzt den App starte erscheint folgendes in der LogCat:


    Jetzt noch den DbAdapter:


    Könnte mit einer sagen was ist falschen machen und was diese fehlermeldung bedeutet:

    Java
    android.database.sqlite.SQLiteException: no such table: suture: , while compiling: SELECT _id, title FROM suture


    Danke

  • Hi XDeveloper,


    die Fehlermeldung sagt das die Tabelle nicht da ist.


    Haste mal geschaut ob die DB richtig erstellt wurde.
    Wenn du es auf dem Emulator laufen lässt kannst du in der DDMs -> File Explorer sehen ob die DB erstellt wurde.
    Dann das ding auf den Rechner ziehen und mit sqlitebrowser deiner Wahl mal rein schauen.


    Achtung reine Spekulation:
    Hast du die Versionsnummer zwischen durch mal erhöht?
    Weil dann wird ja die upgrade Methode aufgerufen und die löscht ja nur die Notes Tabelle ruft aber auch wieder die create auf. Und in der führst db.execSQL(DATABASE_CREATE); wieder aus. Was passiert eigentlich wenn man ein SQL create auf ne bestehenede Tabelle ausführt?


    Mfg Titus

  • Hi XDeveloper,


    mmhh ok das war eigentlich nicht meine Idee.
    Ganz ehrlich deinstallier das App von deinem Entwicklungsgerät (Emu oder Handy) und stell die DATABASE_VERSION auf 1.
    Dann installier es neu und schau ob die Datenbank richtig angelegt wurde und ob die Tabelle da ist.


    Mfg Titus

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!