![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FoEbEF%2FbtrpjwuxnMn%2FPfXeA0ji3w8IDf3UuJ4Ts1%2Fimg.png)
스터디
[SpringBoot] JPA / EntityManager 외래키 체크 설정 해제! - SQLIntegrityConstraintViolationException 해결법
스프링부트와 DB를 연동해서 쓰다보면 가끔 외래키로 인해 문제가 발생하는 경우가 있다. 나같은 경우는 00시마다 PARK_DATA 테이블을 delete from 으로 초기화 시켜야하는데 연관되어 있는 외래키 때문에 아래와 같은 오류가 발생해 골치아팠다. 이를 해결하기 위해선 EntityManager 의 createNativeQuery 함수를 사용해야한다. NativeQuery란? 다양한 이유로 JPQL을 사용할 수 없을 때, JPA에서 NativeQuery를 통해 SQL을 직접 사용할 수 있는 기능을 제공. SQL 구문인 SET FOREIGN_KEY_CHECKS = 0 을 사용하면 외래키 체크 설정을 해제할 수 있지만 JPQL에서 이와 같은 기능을 하는 문법은 찾을 수가 없었다. 그래서 SQL 구문을 직..