프로그래밍/DataBase
Cannot truncate a table referenced in a foreign key constraint 오류 회피 방법.
Mr-후
2024. 6. 25. 15:18
반응형
아직도 구글을 검색하나요?
이렇게 물어보면서도 구글에 검색이 되도록 키워드를 잡는다.
아이러니다.
사소한 모든 오류와 처리했던 내용들을 기록으로 남겨야겠다.
제목과 같은 오류가 발생한다면 간단하게 회피할 수 있는 방법이 있다.
대상 데이터베이스는 MySQL이다.
-- 외래 키 제약 조건 비활성화
SET FOREIGN_KEY_CHECKS = 0;
-- 테이블 비우기
TRUNCATE TABLE SAMPLE.TABLE_NAME;
-- 외래 키 제약 조건 활성화
SET FOREIGN_KEY_CHECKS = 1;
-- 외래 키 제약 조건 삭제
ALTER TABLE SAMPLE.TABLE_NAME_REFER DROP FOREIGN KEY FK7u1hsi3qcyd86fdd7q3cwtvt8;
-- 테이블 비우기
TRUNCATE TABLE SAMPLE.TABLE_NAME;
-- 외래 키 제약 조건 다시 추가
ALTER TABLE SAMPLE.TABLE_NAME_REFER ADD CONSTRAINT FK7u1hsi3qcyd86fdd7q3cwtvt8 FOREIGN KEY (WORKTIME_ID) REFERENCES ECS_ASOPTIO.ADMIN_WORKTIME (ID);
그렇지 않고 그냥 DELETE FROM SAMPLE.TABLE_NAME; 을 날려도 된다.
반응형