Uit de klassedocumentatie van Android SQLiteDatabase:
Voer een enkele SQL-instructie uit die GEEN SELECT is of een andere SQL-instructie die gegevens retourneert.
Het heeft geen middelen om gegevens te retourneren (zoals het aantal getroffen rijen). In plaats daarvan wordt u aangemoedigd om insert(String, String,ContentValues), update(String, ContentValues, String, String[]), et al, indien mogelijk te gebruiken.
Dan later:
Gebruik in plaats daarvan een van de volgende instructies voor UPDATE-instructies.
update(String, ContentValues, String, String[])
updateWithOnConflict(String, ContentValues, String, String[], int)
Voor zover ik weet, is de execSQL
methode is meer voor databasebewerkingen op een hoger niveau, zoals het maken van tabellen en het wijzigen van schema's, en de .query
, .update
, .delete
, etc. methoden moeten worden gebruikt om rijen te wijzigen. Ik weet niet zeker of je een andere optie hebt dan .update
om deze bewerking uit te voeren.