Wie Inkrement-Feld in android sqlite-Datenbank
Möchte ich increment-Spalte in einem android sqlite Datenbank. Im tut so:
public void atualiza(String word){
this.db.rawQuery("UPDATE words SET count = count + 1 WHERE word= ? ", new String[] {word});
}
Und ich rufe diese Methode in einer anderen Klasse wie folgt aus:
this.dh.atualiza(word);
Aber wenn ich ziehen Sie die Datenbank aus den emulator und check mit dem SQLite Datenbank Browser, das Feld wird nicht erhöht. Warum?
- wie wärs, wenn du ein select aus Ihrem code (wählen Sie für die Zählung von Worten, wo word=?), hat es den richtigen Wert zurück? (sind Sie auf jeden Fall das ziehen der richtigen Datenbank?)
- Ich denke
rawQuery
einen Fehlercode zurückgibt. Können Sie überprüfen, was es ist? Auch updates sollten gemacht werden mit execSQL.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollten Sie wirklich verwenden
execSQL
für eine Abfrage, dass nicht wieder eine Tabelle: Erhöhen Sie den Wert, der einen Datensatz in android/sqlite-DatenbankMüssen Sie starten eine Transaktion auf die Datenbank Daten nicht einfügen in Sqlite database in android