Fra Android SQLiteDatabase-klassedokumentationen:
Udfør en enkelt SQL-sætning, der IKKE er en SELECT eller en anden SQL-sætning, der returnerer data.
Det har ingen mulighed for at returnere nogen data (såsom antallet af berørte rækker). I stedet opfordres du til at bruge insert(String, String,ContentValues), update(String, ContentValues, String, String[]), etal, når det er muligt.
Så senere:
For UPDATE-sætninger skal du bruge et af følgende i stedet.
update(String, ContentValues, String, String[])
updateWithOnConflict(String, ContentValues, String, String[], int)
Så vidt jeg kan se, er execSQL
metoden er mere til databaseoperationer på højere niveau, såsom oprettelse af tabeller og ændring af skema, og .query
, .update
, .delete
, osv. metoder skal bruges til at ændre rækker. Jeg er ikke sikker på, at du har en anden mulighed end .update
for at udføre denne handling.