spring data jpa에서 Query Annotation에서 update 쿼리를 사용하는 경우 다음과 같이 Modifying이라는 Annotation을 추가적으로 사용해야 한다.
public interface QuestionRepository extends SlippCommonRepository<Question, Long>{
@Query("SELECT q from Question q JOIN q.tags t where t.name = :name")
Page<Question> findsByTag(@Param("name") String name, Pageable pageable);
@Modifying
@Query("UPDATE Question q set q.showCount = q.showCount + 1 where q.questionId = :questionId")
void updateShowCount(@Param("questionId") Long questionId);
}
Modifying Annotation을 추가하지 않는 경우 Not supported for DML operations 에러가 발생한다.
0개의 의견 from SLiPP
의견을 남기기 위해서는 SLiPP 계정이 필요합니다.
안심하세요! 회원가입/로그인 후에도 작성하시던 내용은 안전하게 보존됩니다.
SLiPP 계정으로 로그인하세요.
또는, SNS 계정으로 로그인하세요.