🧬 상속 관계 매핑

관계형 데이터베이스에는 상속이라는 개념이 없다.

대신 슈퍼타입 서브타입 관계(Super-Type Sub-Type Relationship)라는 모델링 기법이 객체의 상속 개념과 가장 유사하다.

ORM에서 이야기하는 상속 관계 매핑은 객체의 상속 구조와 데이터베이스의 슈퍼타입 서브타입 관계를 매핑하는 것이다.

슈퍼타입 서브타입 논리 모델(좌), 객체 상속 모델(우)

슈퍼타입 서브타입 논리 모델을 실제 물리 모델인 테이블로 구현하는 3가지 방법

1. 조인 전략

엔티티 각각을 모두 테이블로 만들고 자식 테이블이 부모 테이블의 기본키를 받아서 기본키 + 외래키로 사용하는 전략이다.

따라서 조회할 때 조인을 자주 사용한다.

주의할 점 : 객체는 타입으로 구분할 수 있지만 테이블은 타입의 개념이 없다.

따라서 타입을 구분하는 컬럼을 추가해야 한다.

조인 테이블