인프런 커뮤니티 질문&답변

dhj100님의 프로필 이미지

작성한 질문수

[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core

FileInterceptor 적용하기

관계형 연결되어있는 DB 모델 삭제 시 에러 처리

해결된 질문

23.12.05 15:55 작성

·

329

1

안녕하세요. 강의 잘 듣고 있습니다.

image multer 적용 후, 몇가지 api를 테스트 하던중에 아래와 같은 에러가 발생하여, 해결하고자 시도를 해보았는데 잘 해결 되지 않아 질문 드립니다.

 

  • 에러 메세지
    QueryFailedError: update or delete on table "posts_model" violates foreign key constraint "FK_40cd89c6655ec7b102842feacab" on table "image_model"

  • 에러 발생 상황
    - image가 post 모델에 관계형이 지어있는 상황에서, post를 지우려고 하면 (deletePost API 사용) 위와 같은 에러 메세지가 나오며 에러가 발생합니다.

  • 에러 해결을 위한 시도
    - onDelete : "CASCADE" 옵션을 posts model에 주고, db를 초기화 한후 다시 시도해보았지만 같은 상황이 발생하였습니다.

해당 에러를 어떤식으로 해결해야할지 말씀 부탁드립니다.

답변 1

1

코드팩토리님의 프로필 이미지
코드팩토리
지식공유자

2023. 12. 05. 15:59

안녕하세요!

onDelete 옵션은 연동된 상대 row가 삭제됐을때의 액션을 정의합니다.

즉, post 테이블에 정의하게되면 post가 바라보고있는 테이블에서의 삭제를 감지합니다.

말씀 하신것처럼 post가 삭제됐을때 image도 같이 삭제되길 원한다면 image에 onDelete: Cascade 옵션을 주셔야합니다.

감사합니다!

dhj100님의 프로필 이미지
dhj100
질문자

2023. 12. 05. 16:03

감사합니다! 말씀해주신데로 해보겠습니다.

dhj100님의 프로필 이미지

작성한 질문수

질문하기