최대 1 분 소요

문제 상황

UserRank 정보가 포함된 데이터를 DB에 반영하는 업데이트 쿼리를 날리는 과정에서 다음 에러가 발생했다.

org.springframework.dao.DataIntegrityViolationException: could not execute statement 
[Duplicate entry '1' for key 'rank.UK_4av3yjnher33aw0bfhrlvcjq0'] 
[insert into `rank` (mall_id,user_id,view,rank_id) values (?,?,?,?)]; SQL 
[insert into `rank` (mall_id,user_id,view,rank_id) values (?,?,?,?)]; 
constraint [rank.UK_4av3yjnher33aw0bfhrlvcjq0]

해결 방법

UserRank 연관관계를 1:N으로 설정해야 했는데 1:1로 잘못 설정해놓고 1:N에 맞는 쿼리를 날리고 있어서 발생한 문제였다.
@OneToOne에서 @OneToMany, @ManyToOne으로 설정해주니 해결할 수 있었다.

카테고리:

업데이트:

댓글남기기