Referential integrity constraint violation: PUBLIC.BOARDIMG FOREIGN KEY(BNO) REFERENCES PUBLIC.BOARD(BNO)

Yeoonnii·2022년 11월 8일
0

MyBatis

목록 보기
5/10

오류

MyBatis를 이용하여 데이터를 삭제시 오류가 발생했다

오류 내용을 보면 Referential integrity constraint violation = 참조 무결성 제약 조건 위반이 발생한것을 확인 할 수 있다

참조 무결성 제약 조건이란 각 릴레이션(관계)은 참조할 수 없는 외래키 값을 가질 수 없어야 한다는 제약조건이다

해결

JPA에서 엔티티는 DTO같은 존재일 뿐이다

JPA에 엔티티에 설정된 매핑 관계라던지 cascade = CascadeType.REMOVE옵션등은 JPA를 사용하는 경우만 적용이 된다

JPA와 MyBatis를 혼용해서 쓰다보니 잠시 혼란이 왔던것 같다

JPA 엔티티를 이용하여 MyBatis로 데이터를 지우는 경우
1. 연관관계 하위 데이터를 먼저 수동으로 지워주고
2. 1이 모두 수행된 후 연관관계 상위 데이터를 지워줘야 한다

0개의 댓글