1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

Datenbank Views - Probleme mit 2.1

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von Tom299, 02.11.2011.

  1. Tom299, 02.11.2011 #1
    Tom299

    Tom299 Threadstarter Android-Experte

    Beiträge:
    602
    Erhaltene Danke:
    120
    Registriert seit:
    31.08.2011
    Hallo,

    hat jemand von Euch schon mal mit Datenbank-Views gearbeitet und Probleme mit 2.1er Version gehabt?

    ERROR/AndroidRuntime(303): Caused by: android.database.sqlite.SQLiteException: no such column: Mandant_ID: , while compiling: Select *, SUM(Bemerkung) as Info, count(*) as Anzahl from viewStrassen where Mandant_ID ...

    Wenn ich nen 2.3er Emu nehme funktioniert alles anstandslos. Liegt der Fehler da bei mir oder evtl. Android-Bug in 2.3 behoben?

    Mein SQL wird als rawQuery ausgeführt:
    Code:
        public Cursor executeQuery(String sql) {
            return dataBase.rawQuery(sql, null);
        }
    
    und wenn meine Activity den Aufruf macht, dann knallts
    Code:
    Cursor c = GlobalData.getDataBaseHelper().executeQuery(sql);
    
    jemand ne Idee?
     
  2. swordi, 02.11.2011 #2
    swordi

    swordi Gewerbliches Mitglied

    Beiträge:
    3,389
    Erhaltene Danke:
    441
    Registriert seit:
    09.05.2009
    und bist dir sicher die spalte Mandant_ID gibts auch in beiden Emulatoren ?

    Wenn du die nachträglich eingefügt hast, musst die app neu installieren, damit das übernommen wird.
     
  3. Tom299, 02.11.2011 #3
    Tom299

    Tom299 Threadstarter Android-Experte

    Beiträge:
    602
    Erhaltene Danke:
    120
    Registriert seit:
    31.08.2011
    ähm, da hab ich gerade den falschen Fehler gepostet ... ist auch schon behoben ... aber der folgende ist eigentlich der gesuchte:

    ERROR/CursorWindow(1141): Bad request for field slot 0,-1. numRows = 1, numColumns = 7

    im Code greife ich über den Spaltenname zu:
    Code:
    int imandant = cres.getInt(cres.getColumnIndex("Mandant_ID"));
    
    cres ist mein Cursor und so wie es aussieht, kommt Android 2.1 mit dem Spaltenname bei einer View nicht klar. Bei 2.3 klappts wie gesagt problemlos. Der Spaltenname stimmt zu 100% und es ist ein Integer.

    Android 2.1 Bug?
     
  4. swordi, 02.11.2011 #4
    swordi

    swordi Gewerbliches Mitglied

    Beiträge:
    3,389
    Erhaltene Danke:
    441
    Registriert seit:
    09.05.2009
    getColumnIndex wird wohl -1 liefern,

    versuch einfach mal die spalte Mandant_ID anders zu nennen. einfach mid, dann kannst du den fehler, dass der spaltenname "falsch" ist zumindest mal ausschließen.
     
  5. Tom299, 02.11.2011 #5
    Tom299

    Tom299 Threadstarter Android-Experte

    Beiträge:
    602
    Erhaltene Danke:
    120
    Registriert seit:
    31.08.2011
    Beim Umbenennen kommt der gleiche Fehler, also scheinbar doch eher Android 2.1 Bug? ;-)
     
  6. swordi, 02.11.2011 #6
    swordi

    swordi Gewerbliches Mitglied

    Beiträge:
    3,389
    Erhaltene Danke:
    441
    Registriert seit:
    09.05.2009
    kannst mal etwas mehr von code zeigen bitte

    das drumherum
     

Diese Seite empfehlen