R
RoboTH
Gast
Hi,
ich habe schon diverse Tutorials angeguckt, aber mein Fheler will sich (zumindest von mir) einfach nicht ausmerzen lassen...
Und zwar habe ich eine Datenbank mit folgenden Daten:
Meine Update-Methode sieht wie folgt aus:
Nur leider wird das Feld der Spalte "faved" in der Reihe "id" (wird zur Laufzeit variabel gesetzt) bei folgendem Aufruf nicht von "1" auf "0" geupdatet 
Seht Ihr den Fehler? Ich verzweilfe bald daran.
Danke schon mal vorab
ich habe schon diverse Tutorials angeguckt, aber mein Fheler will sich (zumindest von mir) einfach nicht ausmerzen lassen...
Und zwar habe ich eine Datenbank mit folgenden Daten:
Code:
// normal vouchers table name
public static final String DATABASE_TABLE_NORMAL_VOUCHERS = "List_Vouchers_normal";
// voucher table columns names and number
public static final String KEY_ID = "_id";
public static final String KEY_TITLE = "title";
public static final String KEY_DESCR = "description";
public static final String KEY_CATEGORY = "category";
public static final String KEY_GIVEN = "given";
public static final String KEY_FAVED = "faved";
public static final String KEY_USED = "used";
Code:
public boolean updateField(final String tableName, final int rowID,
final String columnName, final String updateValue) {
SQLiteDatabase db = this.getReadableDatabase();
// ID may not be replaced!
if (columnName.equals(KEY_ID)) {
return true; // you never want to return false!
}
if (columnName.equals(KEY_FAVED) || columnName.equals(KEY_GIVEN)
|| columnName.equals(KEY_USED)) {
// write integer instead of String to Database field as column requires!
Log.e("updateField", "SETTING VALUE updateValue = " + updateValue);
db.execSQL("UPDATE " + tableName + " SET " + columnName + " = '"
+ Integer.parseInt(updateValue) + "' WHERE " + KEY_ID
+ "='" + rowID + "';");
} else {
// normal execution (write String to field)
db.execSQL("UPDATE " + tableName + " SET " + columnName + " = '"
+ updateValue + "' WHERE " + KEY_ID + " = '" + rowID + "';");
}
return true;
}

Code:
mHelper.updateField(DatabaseManager.DATABASE_TABLE_NORMAL_VOUCHERS,
id, DatabaseManager.KEY_FAVED, "0");
Danke schon mal vorab

Zuletzt bearbeitet: