增加数据库中的值
Incrementing a value in a database
我正在使用 android 房间来存储我的记录。每条记录包含主要的 2 个字段:以字符串形式显示的日期和以整数形式显示的当天对应的 phone 解锁次数。
我想知道每次用户解锁 phone 时在数据库中增加该数字的最佳方法是什么。
有没有比查询数据库中的当前解锁数、将其递增 1 并更新字段更好的方法?
有没有一些聪明的方法来增加价值而不首先进行查询以了解确切的价值?
只需注释字段,您想要增加此注释
@PrimaryKey(autoGenerate = true) private final int id;
当用户解锁 phone 时,只需为您的 @Entity
创建一个新实例。
对于 @Entity
构造函数中的 id
传递 0 ,Room 会自动生成下一个值。
尝试使用简单的更新查询:
@Query("UPDATE TableName SET FieldToIncrement = FieldToIncrement + 1 WHERE ID = :id")
public abstract void incrementValue(long id);
我正在使用 android 房间来存储我的记录。每条记录包含主要的 2 个字段:以字符串形式显示的日期和以整数形式显示的当天对应的 phone 解锁次数。 我想知道每次用户解锁 phone 时在数据库中增加该数字的最佳方法是什么。 有没有比查询数据库中的当前解锁数、将其递增 1 并更新字段更好的方法? 有没有一些聪明的方法来增加价值而不首先进行查询以了解确切的价值?
只需注释字段,您想要增加此注释
@PrimaryKey(autoGenerate = true) private final int id;
当用户解锁 phone 时,只需为您的 @Entity
创建一个新实例。
对于 @Entity
构造函数中的 id
传递 0 ,Room 会自动生成下一个值。
尝试使用简单的更新查询:
@Query("UPDATE TableName SET FieldToIncrement = FieldToIncrement + 1 WHERE ID = :id")
public abstract void incrementValue(long id);