Skip to content

서브타입

서브타입은 엔터티의 **상위-하위 관계**를 표현하는 바커 표기법의 핵심 요소입니다.

개념

하나의 엔터티가 여러 유형으로 분류될 수 있을 때, 각 유형을 **서브타입**으로 정의합니다.

사원 (Employee)
├── 정규직 (Permanent)
├── 계약직 (Contract)
└── 인턴 (Intern)

서브타입 정의

  1. 상위 엔터티를 우클릭서브타입 정의 선택
  2. 서브타입 다이얼로그에서 설정:
항목 설명 예시
구분 속성 서브타입을 구분하는 Discriminator 컬럼 사원유형코드
서브타입 항목 하위 유형 추가 정규직, 계약직, 인턴
구분값 각 항목의 식별 값 PERM, CONT, INTERN

시각적 표현

서브타입은 상위 엔터티 내부에 **중첩 박스**로 표시됩니다. 각 서브타입 항목은 고유 색상으로 구분됩니다.

색상 팔레트

ThinkERD는 8가지 프리셋 색상을 자동 배정합니다:

색상 용도
🟢 Green 첫 번째 서브타입
🔵 Blue 두 번째 서브타입
🟣 Indigo 세 번째 서브타입
🟪 Purple 네 번째 서브타입

색상은 수동으로 변경할 수 있습니다.

서브타입 인터랙션

서브타입 박스는 다음 인터랙션을 지원합니다:

동작 설명
이동 서브타입 박스를 엔터티 내에서 드래그
리사이즈 박스 모서리를 드래그하여 크기 조정
편집 더블클릭하여 서브타입 편집
선택 클릭하여 개별 서브타입 선택

포함 방식

방식 설명
Exclusive 각 항목이 상호 배타적 (기본)
Inclusive 항목 간 중복 가능

물리 변환

서브타입을 물리 모델로 변환할 때는 단일 테이블 전략(모든 서브타입을 하나의 테이블에), 개별 테이블 전략(각 서브타입을 별도 테이블에), 슈퍼타입+서브타입 전략 등을 선택할 수 있습니다.