관계형 데이터베이스에서 사용되는 중요한 개념
테이블 간의 관계를 설정하고 유지하기 위해 사용됨
목적
- 두 테이블 간의 관계 설정 : 외래 키를 사용하면 한 테이블의 행이 다른 테이블의 특정 행과 관련되어 있음을 나타낼 수 있음, 이 관계를 통해 두 테이블 간의 관련성 설정가능
- 무결성 유지 : 외래 키는 데이터 무결성을 유지하기 위해 사용, 부모 테이블에 있는 데이터를 삭제하거 수정할 때 관련된 자식 테이블의 데이터도 영향을 미칠 수 있다는 것을 의미, 데이터의 일관성과 정확성을 보장하는데 도움을 줌
조인(join) 작업 : 외래 키를 사용하면 데이터베이스에서 테이블 간의 조인 작업을 수행할 수 있음
스프링부트에서는 다대다, 다대일관계를 설정하면 객체 관계 매핑을 통해 데이터베아스 테이블과 엔티티 클래스 간의 관계를 설정하고, 이를 기반으로 데이터베이스 스키마를 생성하여 외래 키관계를 자동으로 처리함