>데이터 베이스 >MySQL 튜토리얼 >MySQL에서 '외래 키 제약 조건이 잘못 구성되었습니다.' 오류가 발생하는 이유는 무엇이며 어떻게 해결할 수 있습니까?

MySQL에서 '외래 키 제약 조건이 잘못 구성되었습니다.' 오류가 발생하는 이유는 무엇이며 어떻게 해결할 수 있습니까?

Patricia Arquette
Patricia Arquette원래의
2025-01-19 05:54:10220검색

Why Does MySQL Throw a

MySQL 외래 키 제약 조건 오류: 유형 불일치

MySQL에서 table1과 table2 테이블 사이에 외래 키 제약 조건을 설정하려고 하면 "외래 키 제약 조건의 형식이 잘못되었습니다."라는 오류가 발생할 수 있습니다. 이 제약 조건은 참조 무결성을 보장하기 위해 table2의 IDFromTable1 열을 table1의 열 ID에 연결하도록 설계되었습니다.

두 테이블 모두 InnoDB 스토리지 엔진을 사용하고 열의 데이터 유형이 char 유형이지만 오류가 여전히 존재합니다. 문제의 원인은 컬럼 속성의 차이입니다.

구체적으로 외래 키 열 IDFromTable1과 참조 열 ID의 데이터 유형이나 길이가 다릅니다. 이 문제를 해결하려면 외래 키 관계에 참여하는 해당 열의 데이터 유형과 길이가 정확히 동일한지 확인해야 합니다.

이 예에서 외래 키 열은 SMALLINT(5) UNSIGNED로 정의되고 참조 열은 INT(10) UNSIGNED입니다. 이 유형 불일치는 열 속성을 정렬하여 외래 키 제약 조건을 성공적으로 설정함으로써 해결됩니다.

위 내용은 MySQL에서 '외래 키 제약 조건이 잘못 구성되었습니다.' 오류가 발생하는 이유는 무엇이며 어떻게 해결할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.