Computer >> 컴퓨터 >  >> 프로그래밍 >> SQL

DBMS 일대다(1:N) 단항 관계 완벽 이해하기

일대다 단항 관계란 무엇인가?

일대다 단항 관계(One-to-Many Unary Relationship)는 하나의 개체(Entity) 내부에서, 같은 인스턴스들이 서로 다른 역할(Role) 그룹으로 표현될 때 형성되는 연관 관계를 의미합니다. 즉, 개체가 자기 자신과 관계를 맺는 구조이며, 이를 '재귀 관계' 또는 '단항 관계'라고도 부릅니다.

DBMS 일대다(1:N) 단항 관계 완벽 이해하기

관리자와 직원의 관계 예시

가장 대표적인 예시로 관리자(Manager)와 직원(Employee) 사이의 관계를 들 수 있습니다.

이 관계에는 두 가지 서로 다른 역할이 존재합니다. 바로 '관리자'와 '직원'입니다. 조직 내에서 관리자 역할을 수행하는 직원은 극소수에 불과하지만, 조직에서 일하는 모든 사람은 직원이라는 점이 핵심입니다.

즉, 한 명의 관리자는 여러 명의 직원을 관리하며, 관리자 자신 역시 조직의 직원이라는 사실이 변하지 않습니다.

일대다 선택-필수(Optional-Mandatory) 관계

DBMS 일대다(1:N) 단항 관계 완벽 이해하기

선택-필수 관계에서는 한쪽 역할 그룹의 모든 인스턴스가 반드시 관계에 참여해야 하는 반면, 다른 쪽 역할 그룹의 인스턴스는 선택적으로 참여할 수 있습니다.

이 예시에서 관리자 역할은 선택적 참여(optional participation)를 만족합니다. 관리자인 직원도 있고, 관리자가 아닌 일반 직원도 있기 때문입니다.

반면 직원 역할 그룹은 역할 고유성(role uniqueness)을 위반하게 됩니다. 최상위 경영층에는 자신을 관리하는 상사가 존재하지 않는 직원이 최소 한 명 이상 있기 때문입니다.

일대다 선택-선택(Optional-Optional) 관계

일대다 선택-선택(Optional-Optional) 관계는 이 시나리오에서 유효한 모델입니다. 직원 입장에서 관리자 역할은 필수가 아닌 선택 사항이며, 최상위 경영진에 속한 직원은 개체 내 어떤 다른 인스턴스에게도 관리받지 않기 때문입니다.

정리하면, 일대다 단항 관계를 설계할 때는 참여 제약 조건(필수 참여 / 선택적 참여)을 신중히 검토해야 하며, 실제 조직 구조에서는 선택-선택 관계가 현실적으로 가장 잘 들어맞는 경우가 많습니다.