1. Mitglieder surfen ohne Werbung auf Android-Hilfe.de! ✔ Jetzt kostenlos Mitglied in unserer Community werden.
  1. MBPower, 11.09.2010 #1
    MBPower

    MBPower Threadstarter Erfahrener Benutzer

    Habe auf einem Handy mit Android 2.2 Probleme mit SQLite.
    Da muss es ein paar Änderungen gegeben haben.
    Der folgenden Code funktioniert in den Versionen 1.5 - 2.1, aber ab 2.2 leider nicht mehr. Es gibt keine Fehlermeldung auf 2.2, aber das Update wird nicht ausgeführt.
    Hat jemand eine Idee?

    Code:
    SQLiteDatabase myDB = null;
    try {
        myDB = this.openOrCreateDatabase(MY_DB_NAME, MODE_PRIVATE, null);
        
            myDB.execSQL("UPDATE " + MY_DB_TABLE + " SET test='" + testcount + "' WHERE " + " test1='" + info1 + "' AND test2='" + info2 + "'");
    
    } finally {
        if (myDB != null)
            myDB.close();
    }
    
     
    Zuletzt bearbeitet: 11.09.2010
  2. TSGames, 12.09.2010 #2
    TSGames

    TSGames Neuer Benutzer

    Hey,

    wird der Code ausgeführt, wenn du keine WHERE-Bedingung einbaust? Oder wird generell kein Update auf die Datensätze angewendet?
    Falls der Fehler in der WHERE-Klausel auftritt, könnte es vielleicht an einem Problem mit der Kodierung liegen (eventuell unterschiedliche Kodierung der Strings?).

    Gruß
    TSGames
     
  3. MBPower, 15.09.2010 #3
    MBPower

    MBPower Threadstarter Erfahrener Benutzer

    Habe das ganze Problem noch mal in Ruhe angeschaut und auch unter verschiedenen SDKs (1.5, 2.1 und 2.2) getestet.
    Das Problem hat doch nichts mit den Versionen zu tun, aber dennoch ist das soooooo unlogisch.

    Das Problem tritt nur auf, wenn das App frisch installiert ist und man noch nie die PreferencesActivity aufgerufen hat.
    Es ist schon ausreichend, wenn ich die PreferencesActivity nur aufgerufen werden und ohne Veränderung die PreferencesActivity wieder geschlossen wird. Es wird nach dem Aufruf auch nichts mehr an dem SqLite geschraubt.

    Auch wenn man nach einmaligem Aufruf von PreferencesActivity das Handy neu startet, dann funktioniert der Update ohne einen erneuten Aufruf der PreferencesActivity. Wenn man das nicht gesehen hat, dann kann man das nicht glauben.

    Ich habe mir beide (funktionierend und nicht funktionierend) SQL Update Aufrufe per log.e ausgeben lassen und es gibt keinen Unterschied, auch kein Leereichen. Beide Zeilen sind komplett identisch, nur ohne einen Aufruf der PreferencesActivity wird kein Update durchgeführt. In den Preferences kann man auch nichts einstellen, was den Sql Aufruf beeinflussen könnte. Auch ein manueller Update Aufruf nur auf eine id funktioniert nicht.

    Wenn es hier einen Android Profi gibt, der gegen Aufwandsentschädigung sich das Problem anschauen würde, dann wäre ich sehr dankbar.
     
    Zuletzt bearbeitet: 15.09.2010
Die Seite wird geladen...
Ähnliche Themen Forum Datum
Eintrag in einer Datenbank mithilfe einer ListView löschen Android App Entwicklung Mittwoch um 17:26 Uhr
Android Studio: Auf Datenbank mit zwei Spinner zugreifen. Android App Entwicklung 07.06.2018
Android Studio: Failed to chmod Android App Entwicklung 06.06.2018
SQLite Datenbank mit zwei Tabellen erstellen Android App Entwicklung 30.05.2018
App wird nach start sofort beendet! Android App Entwicklung 21.05.2018
Mit Webview.findallasync ein Wert überprüfen -Hilfe Android App Entwicklung 29.04.2018
Daten von Android Wear zur Handy-App senden geht nicht Android App Entwicklung 03.04.2018
Benötigte Zugriff ausschalten Android App Entwicklung 07.03.2018
Fragen zu all den Layouts Android App Entwicklung 12.02.2018
Alertdialog mit Button erweitern Android App Entwicklung 02.02.2018
Du betrachtest das Thema "SQLite Android 2.2" im Forum "Android App Entwicklung",
  1. Android-Hilfe.de verwendet Cookies um Inhalte zu personalisieren und dir den bestmöglichen Service zu gewährleisten. Wenn du auf der Seite weitersurfst stimmst du der Cookie-Nutzung zu.  Ich stimme zu.