Что такое шаблон оператора обновления в Android SQLite, чтобы добавить значение в поле? - PullRequest
0 голосов
/ 15 июня 2011

мой код выглядит следующим образом, но, кажется, не работает.

public void update(int mixId, long startPos, int count) {
    SQLiteDatabase db = dbOpenHelper.getWritableDatabase();
    db.execSQL("update downloadedFragement set downloadedLength=downloadedLength+? where mixId=? and startPos=?", 
            new Object[]{count, mixId, startPos});
}

Ответы [ 2 ]

0 голосов
/ 01 августа 2012

У меня была похожая проблема, и я решил ее, окружив ее:

db.beginTransaction();
try {
    //do stuff, including execSQL()
    db.setTransactionSuccessful();
} finally {
    db.endTransaction();
}

Смотрите также https://stackoverflow.com/a/5575277/6027

0 голосов
/ 15 июня 2011

Из документа execSQL () метод:

Выполнить один оператор SQL, который НЕ является SELECT / INSERT / UPDATE / DELETE.

Вы должны использовать метод update () вместо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...