데이터 조작을 위해 MySQL에서 외래 키 제약 조건을 일시적으로 비활성화하는 방법은 무엇입니까?
Nov 07, 2024 am 08:43 AM임시 데이터 조작을 위해 MySQL에서 외래 키 제약 조건 비활성화
MySQL에서 외래 키 제약 조건은 테이블 간의 관계 불일치를 방지하여 데이터 무결성을 보장합니다. . 그러나 이러한 제약 조건은 때때로 빠른 데이터 조작을 방해할 수 있습니다.
문제:
Django에서 모델의 인스턴스를 삭제할 때 외래 키 제약 조건으로 인해 오류가 발생할 수 있습니다. 예:
cursor.execute("DELETE FROM myapp_item WHERE n = %s", n) transaction.commit_unless_managed() # a foreign key constraint fails here cursor.execute("DELETE FROM myapp_style WHERE n = %s", n) transaction.commit_unless_managed()
해결책:
외래 키 제약 조건을 일시적으로 비활성화하고 삭제를 허용하려면 DISABLE KEYS 명령을 사용하거나 FOREIGN_KEY_CHECKS 변수를 다음으로 설정할 수 있습니다. 0.
DISABLE KEYS 사용:
DISABLE KEYS
이 명령은 현재 세션에 대한 모든 외래 키 제약 조건을 비활성화합니다.
SET 사용 FOREIGN_KEY_CHECKS 변수:
SET FOREIGN_KEY_CHECKS=0;
이 명령은 전역 FOREIGN_KEY_CHECKS 변수를 0으로 설정하여 모든 외래 키 제약 조건을 비활성화합니다.
중요: 원하는 데이터를 수행한 후 조작하려면 FOREIGN_KEY_CHECKS를 다시 1로 설정하여 외래 키 제약 조건을 다시 활성화해야 합니다.
SET FOREIGN_KEY_CHECKS=1;
위 내용은 데이터 조작을 위해 MySQL에서 외래 키 제약 조건을 일시적으로 비활성화하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

인기 기사

인기 기사

뜨거운 기사 태그

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Tensorflow 또는 Pytorch로 딥 러닝을 수행하는 방법은 무엇입니까?
