外观
更新数据
根据主键更新实体类数据
java
User user = User.builder()
.id(1)
.userName("张三")
.birthday(new Date())
.build();
Db.table(User.class)
.updater()
.add(user)
.execute();
根据主键批量更新实体类数据
java
User user1 = User.builder()
.id(1)
.userName("张三")
.birthday(new Date())
.build();
User user2 = User.builder()
.id(2)
.userName("李四")
.birthday(new Date())
.build();
Db.table(User.class)
.updater()
.add(user1, user2)
.execute();
根据条件更新实体类数据
java
User user = User.builder()
.userName("张三")
.birthday(new Date())
.build();
Db.table(User.class)
.updater()
.add(user)
.where(sys_user.id.eq(1))
.execute();
根据条件个性化更新数据
java
Db.table(User.class)
.updater()
.set(sys_user.user_name, "张三")
// 更新 NULL 值
.set(sys_user.age, SqlValue.ofNull())
// 更新原生片段
.set(sys_user.birthday, SqlValue.ofRaw("NOW()"))
.where(sys_user.id.eq(1))
.execute();
sql
UPDATE sys_user SET user_name = "张三", age = NULL, birthday = NOW()
字段自增或自减
java
// 自增 age = age + 1
Db.table(User.class)
.updater()
.increment(sys_user.age)
.execute();
// 自增 age = age + 5
Db.table(User.class)
.updater()
.increment(sys_user.age, 5)
.execute();
// 自减 age = age - 1
Db.table(User.class)
.updater()
.decrement(sys_user.age)
.execute();
// 自减 age = age - 5
Db.table(User.class)
.updater()
.decrement(sys_user.age, 5)
.execute();