mysql이 외래 체인 인덱스 데이터를 삭제하고 부모 행을 삭제하거나 업데이트 할 수 없음 : 외래 키 제약 조건이 문제 해결에 실패 함

mysql은 외부 링크 인덱스 데이터를 삭제합니다.

상위 행을 삭제하거나 업데이트 할 수 없음 : 외래 키 제약 조건이 실패 함 문제에 대한 해결책
쿼리 : DELETE FROM goodsWHERE goods_id= '11'
오류 코드 : 1451
상위 행을 삭제하거나 업데이트 할 수 없음 : 외래 키 제약 조건이 실패합니다 ( webDB. goods_properties_detail, CONSTRAINT FK_rip_43FOREIGN KEY ( goods_id) REFERENCES goods( goods_id))
위는 레코드의 특정 필드가 InnoDB의 다른 테이블에 대한 외부 링크로 사용되기 때문입니다. 삭제 작업 중에 외부 링크가 자동으로 확인됩니다.
해결 방법 1 : 먼저 관련 데이터를 삭제하기로 결정한 다음 삭제합니다 (이는 비즈니스 논리에 더 부합하고 더 안전합니다).

해결 방법 2 : 외부 링크를 확인하지 말고 FOREIGN_KEY_CHECKS 변수를 설정하십시오.

SET FOREIGN_KEY_CHECKS = 0;
DELETE FROM `goods` WHERE `goods_id` = '11'

삭제 후 설정

SET FOREIGN_KEY_CHECKS = 1;

ps : 고유성 검사 해제

set unique_checks=0;
set unique_checks=1;

추천

출처blog.csdn.net/weixin_45627031/article/details/114759038