org.springframework.dao.InvalidDataAccessApiUsageException: Update/delete queries cannot be typed; nested exception is java.lang.IllegalArgumentException: Update/delete queries cannot be typed
em.createQuery("delete from Goal as g where g.id = :goalId and g.member.id = :memberId",Goal.class)
.setParameter("goalId",goalId).setParameter("memberId",memberId).getResultList();
초기에 작성한 코드는 이것이었다.
delete문은 조회 대상과 반환 값의 형태가 Enity가 아닌 불분명한 쿼리이므로 클래스 변수를 명시할 필요가 없다.
그리고 getResultList()도 절대 아니다. 반환받을 결과가 없기 때문이다.
그래서 수정한 코드는 아래와 같다.
em.createQuery("delete from Goal as g where g.id = :goalId and g.member.id = :memberId")
.setParameter("goalId",goalId).setParameter("memberId",memberId).executeUpdate();
참고 :
https://devraphy.tistory.com/633
'공부' 카테고리의 다른 글
base64로 이미지 인코딩해서 getmapping으로 프론트에 보내주기 (0) | 2022.08.09 |
---|---|
[스프링 부트와 AWS로 혼자 구현하는 웹 서비스] 2장 TEST 코드 (0) | 2022.06.22 |
[IntelliJ]No tests found for given includes: 오류 해결법 (0) | 2022.06.21 |
인텔리제이 빨간줄 alt+Enter로 import해서 없애기.. (0) | 2022.06.21 |
[스프링 부트와 AWS로 혼자 구현하는 웹 서비스]build.gradle 오류 해결. gradle 반영 reload하기_윈도우 (1) | 2022.06.21 |
댓글