MySQL 외래 키 제약 조건 위반: 오류 1452
두 테이블 사이에 외래 키 제약 조건을 설정하려고 하면 " MySQL 오류 1452 - 하위 행을 추가하거나 업데이트할 수 없습니다. 외래 키 제약 조건이 실패합니다." 이 오류는 참조 테이블과 참조 테이블 사이에 불일치가 있음을 나타냅니다.
두 테이블 모두에 대해 CREATE TABLE 문을 검사하면 다음이 드러납니다.
특히 다음에서 외래 키 제약 조건을 추가하려고 할 때 오류가 발생합니다. sourcecodes_tags를 소스코드로 변환합니다.
이 오류를 해결하려면 sourcecodes_tags 테이블에는 소스 코드 테이블에 더 이상 존재하지 않는 sourcecode_id 값이 포함되어 있습니다.
일관되지 않은 이러한 값을 식별하려면 다음 쿼리를 실행하십시오.
SELECT DISTINCT sourcecode_id FROM sourcecodes_tags tags LEFT JOIN sourcecodes sc ON tags.sourcecode_id=sc.id WHERE sc.id IS NULL;
이 쿼리는 소스 코드 테이블에서 sourcecode_id 값 목록을 반환합니다. 소스코드의 유효한 항목과 일치하지 않는 sourcecodes_tags. sourcecodes_tags에서 이러한 일관되지 않은 값을 제거하면 외래 키 제약 조건을 성공적으로 설정할 수 있습니다.
위 내용은 MySQL 오류 1452: 외래 키 제약 조건 위반을 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!