1. 조인
1️⃣ 관계와 조인(Join)의 개념
1) 관계
- 서로 연결되어 있다는 뜻
- 데이터모델링에서의 ‘관계’ = SQL에서 ‘조인(Join)’
2) 조인(Join)
- 데이터를 서로 연결해서 볼 수 있는 방법
- 두 개 이상의 테이블에서 관련된 데이터를 결합하여 새로운 결과 집합을 생성하는 과정
- 목적 : 테이블 간의 관계를 활용해 필요한 정보를 효율적으로 검색하는 것
2️⃣ 조인의 예
교재 p.53 - 63 참고
2. 계층형 데이터 모델
1️⃣ 계층형 데이터 모델의 개념
1) 계층형 데이터 모델
- 데이터를 나무(tree) 구조로 구성해 데이터 간의 관계를 계층적으로 나타내는 모델
- 상위 요소와 하위 요소 간의 관계가 명확한 구조를 데이터베이스에 적용할 때 주로 사용됨
- 예) 회사의 조직도
2) 특징
- 각 노드가 단 하나의 부모 노드만 가질 수 있음
- 예) 직원 한 명은 오직 한 명의 상사만 가질 수 있음
3) 단점
- 유연성이 떨어짐
- 예) 한 직원이 두 개 이상의 프로젝트 팀에 속하는 경우 표현 어려움
2️⃣ 계층형 데이터 모델의 이해
교재 p.64 - 65 참고
3. 상호배타적 관계
1️⃣ 상호배타적 관계의 개념
1) 상호배타적(Exclusive-OR) 관계
- 두 개 이상의 엔터티 타입이 같은 엔터티 집합에 속할 수 있지만, 특정 시점에는 하나의 엔터티 타입에만 속할 수 있는 관계
- 예
- 학생이 재학 중에 휴학을 했을 때
- 재학생 테이블에 학생의 학번 존재
- 휴학했을 때는 재학생 테이블에서 그 학생의 학번이 사라지고 휴학생 테이블에 학번이 존재
혹은 재학생 테이블에 학번이 남아 있더라도 휴학 여부란에 Y를 체크하면, 재학중이었다가 휴학 했다는 것을 알 수 있음
→ 특정 시점의 관계가 배타적이기 때문에 특정 시점에는 어느 하나의 엔터티 타입에만 속해야 한다는 뜻
2️⃣ 상호배타적 관계의 이해
- 학생 엔터티와 재학생, 휴학생, 졸업생 엔터티 (학번 - 학생 엔터티와 각 상태 엔터티 연결하는 고리 역할)
→ 학생 한 명은 동시에 재학생, 휴학생, 졸업생의 상태 가질 수 없음
→ 학생은 특정 시점에 하나의 상태만 가지며, 시간이 지나면서 상태가 변할 수 있음
→ 데이터 일관성과 정확성 유지하는데 도움
3️⃣ 상호배타적 관계의 특징
1) 엄격한 분류
- 엔터티는 상호배타적인 엔터티 집합 중 하나에만 속할 수 있음
2) 상태 전환
- 엔터티의 상태가 변할 수 있으며, 이 때 다른 엔터티 집합의 속성을 가짐
3) 데이터 무결성
- 엔터티가 특정 시점에 하나의 상태만 가지도록 함으로 데이터의 정확성과 일관성 유지
상호배타적 관계는 데이터 모델링의 중요한 개념
- 엔터티 간 관계를 명확히 정의하고, 데이터 무결성을 보장하는 데 중요한 역할을 함
Share article