Error executing DDL "alter table point_histories add constraint FKhu1wd6druvxb8liijgqjxei4u foreign key (user_id) references pay_moneys (id)" via JDBC Statement
간만에 들어간 메인 프로젝트에서 해당 트러블 발생했다.
이 에러의 근본적인 이유는 뭘까?
데이터베이스 테이블 간에 외래 키(Foreign Key) 제약 조건을 추가하려고 할 때 오류가 발생했다는 것이다.
그렇다면 왜 외래 키를 추가하지 못했을까?
여러가지를 생각해볼 수 있다.
1. 엔터티간의 데이터 타입이 안맞는다.
2. 엔터티간의 제약 조건이 안맞는다.
3. 데이터베이스의 데이터 중 없는 외래 키에 해당하는 데이터가 존재하지 않는다.
코드를 쭉 살펴본 후 문제 없음을 확인하였고, 에러 메세지를 냈던 테이블의 데이터를을 보니 없는 다른 테이블에서 외래 키로 참조하려고 하다보니 문제가 발생한 것이였다.
아주 간단하게 해결하였다.