Spring
Validation failed for query for method public abstract 오류 발생시 (JPA)
dodop
2022. 3. 4. 22:26
existsBy를 이용하여 연관관계의 데이터 아이디로 데이터 존재여부를 아는 쿼리를 작성하려고 할때 알맞은 쿼리임에도
쿼리 실패 오류가 발생했다.
기존의 코드
@Query(value = "SELECT CASE WHEN count(f) > 0 THEN true ELSE false END FROM Follow f LEFT JOIN FETCH f.fromUser a LEFT JOIN FETCH f.toUser b WHERE a.id=:fromUserId AND b.id=:toUserId")
boolean existsByFromUserIdAndToUserId(Integer fromUserId, Integer toUserId);
기존코드를 보면 네이티브 쿼리로 작성되어 있으므로
수정한 코드
@Query(value = "SELECT CASE WHEN count(f) > 0 THEN true ELSE false END FROM Follow f LEFT JOIN FETCH f.fromUser a LEFT JOIN FETCH f.toUser b WHERE a.id=:fromUserId AND b.id=:toUserId", nativeQuery = true)
boolean existsByFromUserIdAndToUserId(Integer fromUserId, Integer toUserId);
해당 쿼리 어노테이션에 nativeQuery 옵션을 true로 주면 작동하는 것을 확인할 수 있다.
( 참고한 사이트 )
https://jamong-icetea.tistory.com/173
[JPA] Validation failed for query for method public abstract...
Validation failed for query for method public abstract... JPA를 통해 쿼리를 출력하는데 위와 같은 에러가 발생했다. 1 2 3 4 @Query("SELECT COUNT(u.uid) " + "FROM USERINFO u " ..
jamong-icetea.tistory.com