삼항 관계란 무엇인가?
삼항 관계(Ternary Relationship)는 서로 다른 세 개의 엔티티가 하나의 관계에 동시에 참여하는 구조를 의미합니다. 이때 관계의 차수(Degree of Relationship)는 3이 됩니다.
예시: 휴대폰 제조 회사
휴대폰을 제조하는 회사를 예로 들어 보겠습니다. 이 관계에는 세 가지 서로 다른 엔티티가 참여합니다.
- 휴대폰(Mobile) – 회사가 제조하는 제품
- 부품(Part) – 공급업체로부터 조달하는 휴대폰 부품
- 공급업체(Supplier) – 회사에 휴대폰 부품을 공급하는 업체
여기서 핵심은 휴대폰, 부품, 공급업체라는 세 엔티티가 동시에 하나의 관계에 참여한다는 점입니다. 따라서 카디널리티(Cardinality)를 분석할 때는 반드시 두 엔티티를 나머지 세 번째 엔티티와 연관 지어 함께 살펴봐야 합니다.

삼항 관계에서의 카디널리티
1. 휴대폰 기준 카디널리티 — N (다수)
특정 공급업체 인스턴스와 특정 부품 인스턴스가 주어졌을 때, 해당 공급업체가 그 부품을 여러 휴대폰 모델에 공급할 수 있을까요?
예시: 공급업체 S1이 프로세서 P1을 회사에 공급하고, 회사는 S1이 공급한 프로세서 P1을 자사의 여러 휴대폰 모델에 사용한다고 가정해 봅시다. 이 경우 공급업체와 부품을 기준으로 한 휴대폰의 카디널리티는 N(다수)입니다.
2. 공급업체 기준 카디널리티 — M (다수)
특정 휴대폰 인스턴스가 주어졌을 때, 그 휴대폰의 한 부품을 여러 공급업체가 공급할 수 있을까요?
예시: 휴대폰 M1에 부품 P1이 사용되며, 이 부품을 여러 공급업체가 동시에 공급한다고 가정해 봅시다. 이 경우 휴대폰과 부품을 기준으로 한 공급업체의 카디널리티는 M(다수)입니다.
3. 부품 기준 카디널리티 — P (다수)
특정 공급업체 인스턴스와 특정 휴대폰 인스턴스가 주어졌을 때, 해당 공급업체는 여러 종류의 부품을 공급할 수 있을까요?
예시: 공급업체 S1이 휴대폰 M1에 필요한 화면, 프로세서 등 다양한 부품을 공급한다고 가정해 봅시다. 이 경우 공급업체와 휴대폰을 기준으로 한 부품의 카디널리티는 P(다수)입니다.
마무리 정리
삼항 관계는 세 개의 엔티티가 서로 긴밀하게 얽혀 있는 복잡한 비즈니스 규칙을 데이터베이스로 모델링할 때 반드시 알아야 할 개념입니다. 특히 각 엔티티의 카디널리티는 단독으로 판단하지 말고, 반드시 나머지 두 엔티티와의 관계 속에서 함께 고려해야 한다는 점을 기억하세요.