테이블을 삭제할 수 없습니다.외부 키 제약에 실패했습니다.
MySQL my my my my my 。
가지 이 '가 나오네요.bericht떨어뜨릴 수 없어요.하다
#1217 - 부모 행을 삭제 또는 업데이트할 수 없음: 외부 키 제약에 실패함
이 테이블은 어떻게 떨어뜨려요?
이렇게 하면 효과가 있습니다.
SET FOREIGN_KEY_CHECKS=0; DROP TABLE bericht; SET FOREIGN_KEY_CHECKS=1;
다른 사람들이 지적하듯이, 이것은 질문에서 질문한 것이긴 하지만, 여러분이 원하는 것은 거의 아닙니다.은 '하다'에 입니다.bericht 전berichtCloudMarble 답답marble 。데이터베이스 자체를 삭제하거나 다시 작성할 수 없거나 삭제할 수 없는 경우 데이터베이스 내의 모든 테이블을 드롭하기 위해 bash 및 게시물의 메서드를 사용합니다.
#1217삭제하려는 테이블에 대해 다른 테이블에 외부 키 제약이 있고 InnoDB 데이터베이스 엔진을 사용하는 경우 오류가 발생합니다.이 솔루션은 구속 장치 검사를 일시적으로 비활성화한 후 다시 활성화합니다.상세한 것에 대하여는, 메뉴얼을 참조해 주세요.외부 키 제한 및 테이블의 필드를 삭제해야 합니다.bericht그렇지 않으면 데이터베이스가 파손된 상태로 남을 수 있습니다.
이것을 시험해 보세요.
SELECT *
FROM information_schema.KEY_COLUMN_USAGE
WHERE REFERENCED_TABLE_NAME = 'YourTable';
이렇게 하면 삭제할 테이블에 대한 참조가 있는 테이블, 이러한 참조를 삭제한 후 테이블 내의 참조 데이터셋을 삭제할 수 있는 데이터셋이 제공됩니다.
그러나 MySQL FORNE_KEY_CHECKS 변수에서는 DROP TABLE 문의 순서를 전혀 걱정할 필요가 없으며, 원하는 순서로 쓸 수 있습니다(정 반대도 마찬가지).
SET FOREIGN_KEY_CHECKS = 0;
drop table if exists customers;
drop table if exists orders;
drop table if exists order_details;
SET FOREIGN_KEY_CHECKS = 1;
자세한 내용은 다음 링크를 참조하십시오.
http://alvinalexander.com/blog/post/mysql/drop-mysql-tables-in-any-order-foreign-keys/
show create table tbl_name 키를
다음 구문을 사용하여 외부 키를 삭제할 수 있습니다.
ALTER TABLE tbl_name DROP FOREIGN KEY fk_symbol
상세한 것에 대하여는, 이쪽도 봐 주세요(Frank Vanderhallen 투고 참조).http://dev.mysql.com/doc/refman/5.5/en/innodb-foreign-key-constraints.html
이 오류는 다른 스키마에 대한 표와 동일할 수 있습니다.
먼저 하위 행을 드롭한 후 상위 행을 드롭해야 합니다.
이것은 잠시 오래되어 답변이 선택된 것을 알 수 있습니다만, 외부 키를 NULL로 하고 나서 ON DELETE SET NULL을 선택하는 대체 방법은 어떻습니까?
기본적으로 테이블은 다음과 같이 변경해야 합니다.
ALTER TABLE 'bericht' DROP FOREIGN KEY 'your_foreign_key';
ALTER TABLE 'bericht' ADD CONSTRAINT 'your_foreign_key' FOREIGN KEY ('column_foreign_key') REFERENCES 'other_table' ('column_parent_key') ON UPDATE CASCADE ON DELETE SET NULL;
개인적으로는 불필요한 문제를 피하기 위해 "ON UPDATE CASCADE"와 "ON DELETE SET NULL"을 모두 사용할 것을 권장합니다.다만, 셋업에 의해서 다른 어프로치가 지시되는 경우가 있습니다.
이게 도움이 됐으면 좋겠다.
언급URL : https://stackoverflow.com/questions/11100911/cant-drop-table-a-foreign-key-constraint-fails
'programing' 카테고리의 다른 글
| Google Maps API v3: fitBounds 후 줌을 설정할 수 있습니까? (0) | 2022.11.05 |
|---|---|
| Java Reflection을 사용하여 상속된 속성 이름/값 검색 (0) | 2022.11.05 |
| 이중 쿼리 없이 MySQL 페이지 번호 지정 (0) | 2022.11.05 |
| 도커가 도커파일을 사용하여 MariaDB에 사용자를 추가하지 않음 (0) | 2022.11.05 |
| php에서 다중 파일 업로드 (0) | 2022.11.05 |