MySQL 오류 150: 외래 키 참조 유형 불일치
여러 테이블이 포함된 데이터베이스를 생성하려고 시도하는 동안 사용자에게 오류가 발생했습니다: " 오류 코드: 1005. '336_project.sections' 테이블을 생성할 수 없습니다(errno: 150)." 해당 오류는 외래키 사용과 관련된 오류입니다.
자세히 살펴보면 해당 컬럼의 데이터 타입이 일치하지 않는 것으로 확인되었습니다. 이 경우 "Sections" 테이블의 "Course_Code" 열은 VARCHAR로 정의되었고 "Courses" 테이블의 해당 열은 INT로 정의되었습니다.
MySQL에서는 외래 키와 기본 키가 필요합니다. 관련 테이블의 키에 일치하는 데이터 유형이 있습니다. 이 오류는 외래 키 제약 조건의 이름과 구문이 올바르게 표시되어도 데이터 유형이 일치하지 않을 때 발생합니다.
해결책:
이 오류를 해결하려면, 상위 테이블과 하위 테이블의 관련 열의 데이터 유형이 동일한지 확인하세요. 이 예에서는 "Sections" 및 "Courses" 테이블 모두에 있는 "Course_Code" 열의 데이터 유형을 VARCHAR로 변경해야 합니다.
데이터 유형이 올바르게 일치하면 외래 키 제약 조건은 다음과 같습니다. 강제 적용하면 오류 없이 테이블 생성이 성공합니다.
위 내용은 MySQL에서 오류 150이 발생하는 이유: 외래 키 참조 유형 불일치?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!