반응형
Notice
Recent Posts
Recent Comments
IT 일기장
[MySQL] Cannot delete or update a parent row: a foreign key constraint fails 해결 본문
프로그래밍 언어/SQL(DB)
[MySQL] Cannot delete or update a parent row: a foreign key constraint fails 해결
뽕슈 2024. 12. 30. 17:48반응형
이 오류는 MySQL에서 발생하는 전형적인 외래 키 제약 조건 위반이다.
보통 외래 키 제약 조건을 가진 테이블에서 부모 테이블의 데이터를 삭제하거나 수정하려고 할 때 자식(참조하는) 테이블에 여전히 연결된 데이터가 있을 경우 이 오류가 발생한다.
이 오류를 해결할 수 있는 가장 빠른 방법은 자식 테이블에서 어떤 데이터가 부모 데이터를 참조하고 있는지 조회하는 것이다.
MySQL의 INFORMATION_SCHEMA를 활용해 외래 키 관계를 확인할 수 있다.
SELECT
TABLE_NAME AS child_table,
COLUMN_NAME AS child_column,
CONSTRAINT_NAME AS constraint_name,
REFERENCED_TABLE_NAME AS parent_table,
REFERENCED_COLUMN_NAME AS parent_column
FROM
INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE
REFERENCED_TABLE_NAME = 'parent_table';
반응형
'프로그래밍 언어 > SQL(DB)' 카테고리의 다른 글
[DB] 데이터 타입 일괄 변경 (0) | 2025.01.16 |
---|---|
[DB] 날짜 DB 컬럼 타입 분석 (0) | 2025.01.09 |
[DBeaver] 대량 테스트 데이터 생성 프로시저 (dummy data) (0) | 2024.06.19 |
[HeidiSQL] db sql export (0) | 2023.03.30 |
[SQL] Error Code: 1175. You are using safe update mode and you tried to update ... (0) | 2023.03.09 |
Comments