UpdateSetMoreStep 을 사용하면 된다.
public void updateAccount(UserSession user, AccountDTO dto) {
// Before
DSL.update(ACCOUNT)
.set(ACCOUNT.USER_NAME, dto.getUserName())
.set(ACCOUNT.ADDRESS, dto.getAddress())
.set(ACCOUNT.UPDATE_USER_ID, user.getId())
.where(ACCOUNT.ID.eq(dto.getAccountId()))
.execute();
// After. apply UpdateSetMoreStep
UpdateSetMoreStep<AccountRecord> updateSets =
DSL.update(ACCOUNT)
.set(ACCOUNT.USER_NAME, dto.getUserName())
.set(ACCOUNT.ADDRESS, dto.getAddress())
.set(ACCOUNT.UPDATE_USER_ID, user.getId());
if (dto.getAccountStatus() == INACTIVE) {
updateSets.set(ACCOUNT.AVAILABILITY, AccountAvailability.UNAVAILABLE);
}
updateSets.where(ACCOUNT.ID.eq(dto.getAccountId())).execute();
}
'DataBase > JOOQ' 카테고리의 다른 글
[JOOQ] Select 문 커스텀해서 만들기. Dynamic select statement. select custom. (0) | 2021.07.27 |
---|---|
[JOOQ] SQL pretty. (0) | 2021.05.17 |
[JOOQ] insert Step으로 편리하게 insert 하자. (0) | 2021.01.14 |