카테고리 없음

MYSQL 에러 (errno: 150 "Foreign key constraint is incorrectly formed")

Empty_Bottle 2023. 3. 27. 16:49

글씨가 작아서  emo:150인 줄 알았더니 errno였군.. 갑자기 이모를 왜 찾나 했다... 

 

1. 부모 테이블의 참조할 대상 컬럼과 자식 테이블의 참조하고자 하는 데이터 유형과 크기가 같은가?

 = 복붙했는데 다를리가요?

2. 코드가 잘못되었는가?

 = 아뇨;; 

3. null 허용 상태가 같은가?

 = 둘 다 not null임

4. 참조받는 놈이 unique key / primary key인가?

 = 이 문제가 아녔음. 참조 받는 놈이 둘 다 아닌데 다른 문제였고 해결 되었음

 

이번 문제의 경우 참조 받는, 만드려는 테이블의 charset이 UTF8MB4 였고 참조할 대상이 UTF8이었다.

UTF8MB4 놈 뭔데... 처음봐요..  😀😁😂🤣😍😘이런 이모지도 다루기 위해 쓰이는 character이라고 함...

ALTER TABLE ASSESSDOC CONVERT TO CHARACTER SET utf8;

이 SQL문으로 CHARACTER 변경하고 해결됨.