Я пытаюсь увеличить значение целочисленного ключа в строке в моей таблице. Однако ничего действительно не происходит.Увеличьте значение записи в базе данных android/sqlite
db.rawQuery("UPDATE table SET key = key + 1 WHERE name=?", new String[] {name});
Однако, этот код работает отлично (просто устанавливает ключ жестко предопределенным значением): '?'
ContentValues values = new ContentValues();
values.put("key", 2);
db.update("table", values, "name=?", new String[] {name});
также попытался а не просто?, но это привело к ошибке во время выполнения.
Попробовал ли «db.rawQuery (« UPDATE table SET key = key + 1 WHERE name = 'name »и передал значение null вместо строки [], потому что этот вид оператора отлично подходит для меня ... – Sephy
Проверка работоспособности: если «ключ» объявлен как первичный ключ, вы уверены, что новое значение ключа еще не существует? – MPelletier
При использовании WHERE name = 'name' он ничего не делает. Name = '?' throws: android.database.sqlite.SQLiteException: индекс привязки или столбца за пределами диапазона: handle 0x292660. Он не объявляется как первичный ключ или что-то другое странное, простое непустое целое, должно быть установлено равным нулю из что я могу сделать, чтобы попытаться изолировать проблему? – nip3o