2016-04-27 13 views
-2

Ich habe verwendet db = this.getWritableDatabase(); im Konstruktor selbst, also habe ich keine bestimmte Öffnungs- oder Schließungsfunktion verwendet. Sollte ich?Aktualisierungsabfrage SQLite gibt Null-Zeiger-Ausnahme

public void changeCabLocation(String to_loc, String cab_id2) { 
    // TODO Auto-generated method stub 
    ContentValues val=new ContentValues(); 
    val.put(cab_location, to_loc); 
    db.update(TB_cabs, val, cab_id+"="+cab_id2, null); 
} 

public void changeDriverLocation(String to_loc, String driver_id2) { 
    // TODO Auto-generated method stub 
    ContentValues val=new ContentValues(); 
    val.put(driver_location, to_loc); 
    db.update(TB_drivers, val, driver_id+"="+driver_id2, null); 
} 
+0

Bitte geben Sie die logcat teilen, erwähnen die spezifische Linie Ihre Fehler auftritt, und ein [MCVE]. –

Antwort

0

Versuchen Sie Folgendes:

db.update(TB_cabs, val, "cab_id=?", new String[] {cab_id2}); 
+0

Wie behebt das NPE? –

+0

Ich bin nicht sicher, deshalb habe ich versucht geschrieben. Aber für mich scheint es nicht sehr vernünftig, dass cab_id (und driver_id) einen Spaltennamen und ja einen Spaltenwert enthält. War das eine falsche Annahme? –

+0

Ohne das logcat können wir nicht klar sein, was null ist. Du könntest also Recht haben, aber auch nicht. –

Verwandte Themen