티스토리 뷰
카테고리 없음
[DB Error] Cannot delete or update a parent row: a foreign key constraint fails
기내식은수박바 2021. 2. 2. 01:39반응형
원인
foreign key가 걸린 테이블을 쿼리로 직접 삭제하는 경우에 발생하는 에러이다.
테이블을 삭제할 경우, 존재하지 않는 테이블을 foreign key가 참조하는 이상한 상황이 발생하기 때문에 DBMS에서 사전에 이를 방지를 해주는 것이다.
해결 방법
만약 강제로 테이블을 삭제하고 싶다면, 아래와 같이 수행한다.
- foreign key 체크 설정 비활성화
- 테이블 삭제
- foreign key 체크 설정 활성화
mysql> SET foreign_key_checks = 0;
mysql> drop table TABLENAME;
mysql> SET foreign_key_checks = 1;
Reference
반응형
댓글