当前位置: 代码迷 >> Android >> SQLite:更新:将1添加到先前的值
  详细解决方案

SQLite:更新:将1添加到先前的值

热度:42   发布时间:2023-08-04 11:33:09.0

我正在Android上构建应用程序。 我想做的就是将1添加到数据库中的上一个值。

数据库中列分数的值为200。

SQLiteDatabase db = database.getWritableDatabase();
int resultRows = 0;
values = new ContentValues(1);
values.put(DBContract.Countries.SCORE, DBContract.Countries.SCORE + " + 1");
resultRows = db.update(DBContract.Countries.TABLE_NAME, values, DBContract.Countries.ISO + " = ?", selectionArgs);

实际输出为SCORE + 1而不是201。因此,它将其作为String而不是将其添加。 有人有什么想法吗?

您可以使用ContentValues仅提供文字值。

对于SQL表达式, execSQL()原始SQL与execSQL()

db.execSQL("UPDATE " + DBContract.Countries.TABLE_NAME + " SET " +
    DBContract.Countries.SCORE + "=" + DBContract.Countries.SCORE + " + 1 " +
    "WHERE " + DBContract.Countries.ISO + " = ?", selectionArgs);
  相关解决方案