ER 모델 (Entity-Relationship Model) 정리
1. ER 모델이란?
- 현실 세계의 데이터를 개념적/논리적 데이터 모델로 표현하는 방법.
- 데이터베이스 설계 시 개체(Entity), 속성(Attribute), 관계(Relationship)를 통해 데이터를 구조화하고 시각화하는 모델.
- 1976년 피터 첸(Peter Chen)에 의해 제안됨.
2. ER 모델의 목적
- 데이터베이스 설계에서 데이터를 시각적으로 표현하여 개발자나 이해관계자들이 쉽게 이해할 수 있도록 도움.
- 개체 간의 관계와 속성을 명확하게 정의하여 데이터 중복을 방지하고 효율적인 데이터베이스 구조를 설계.
3. 주요 구성 요소 (ER 다이어그램의 기본 기호)
1) 개체 타입 (Entity Type)
- 기호: 사각형(□)
- 설명: 관리하고자 하는 객체나 주제.
- 예: 학생(Student), 도서(Book), 주문(Order) 등.
2) 관계 타입 (Relationship Type)
- 기호: 마름모(◇)
- 설명: 개체 간의 상호작용이나 연관성을 표현.
- 예: 학생과 강좌 간의 "수강한다", 고객과 주문 간의 "주문한다".
3) 속성 (Attribute)
- 기호: 타원(◯)
- 설명: 개체나 관계에 대한 세부 정보.
- 예: 학생 개체의 속성 - 이름(Name), 학번(Student ID), 나이(Age) 등.
4) 기본키 속성 (Primary Key Attribute)
- 기호: 타원 안에 밑줄 표시 (예: ◯학번)
- 설명: 개체를 고유하게 식별하는 속성.
- 예: 학번(Student ID), 주문번호(Order Number) 등.
5) 복합 속성 (Composite Attribute)
- 기호: 여러 타원으로 연결된 구조 (예: [주소(Address) → [시(City), 구(District)]])
- 설명: 하나의 속성이 여러 개의 세부 속성으로 나뉘는 경우.
- 예: 주소(Address) 속성이 시(City), 구(District), 상세주소로 나뉠 수 있음.
6) 다중값 속성 (Multivalued Attribute)
- 기호: 이중 타원(◎)
- 설명: 하나의 속성이 여러 개의 값을 가질 수 있는 경우.
- 예: 전화번호 속성(Phone Numbers)이 여러 개일 수 있음.
7) 관계 대응 수 (Cardinality)
- 기호: 관계선 위에 숫자나 기호로 표시 (예: 1:1, 1:N, N:M)
- 설명: 개체 간의 연결 가능한 개수를 나타냄.
- 1:1 관계: 한 개체가 다른 개체와 1개의 관계만 가짐.
- 1:N 관계: 한 개체가 여러 개의 다른 개체와 관계를 가짐.
- N:M 관계: 여러 개의 개체가 서로 여러 개의 개체와 관계를 가짐.
4. ER 다이어그램의 예시
학생(Student)과 수강(Course)의 관계를 표현하는 경우
- 개체:
- 속성:
- 학생 개체: 학번(Student ID), 이름(Name), 전공(Major)
- 강좌 개체: 과목코드(Course Code), 과목명(Course Name), 학점(Credit)
- 관계:
- "수강한다(Enrolls)" 관계 (학생 ↔ 강좌)
- 대응 수:
- 학생 1명은 여러 개의 강좌를 수강할 수 있고, 강좌 1개에는 여러 명의 학생이 수강할 수 있음 (N:M 관계).
5. ER 모델의 주요 특징
- 데이터 시각화: 개체, 속성, 관계를 도형과 기호로 표현하여 쉽게 이해 가능.
- 데이터 구조 명확화: 데이터의 연관성과 구조를 명확하게 정의하여 설계 오류 방지.
- 유연성: 다양한 관계 유형(1:1, 1:N, N:M 등)을 제한 없이 표현 가능.
6. ER 다이어그램 문제 예시
- 문제 유형:
- "타원이 의미하는 것은 무엇인가?"
- "다중값 속성을 나타내는 기호는?"
- "복합 속성을 나타내는 기호를 작성하시오."
- "개체와 개체 간의 관계 유형을 기술하시오."
7. 요약 및 시험 대비 포인트
- ER 모델이란 무엇이며, 개체, 속성, 관계의 개념을 정확히 이해해야 합니다.
- ER 다이어그램 기호(사각형, 마름모, 타원 등)와 각 기호의 의미를 확실히 기억하세요.
- 시험에서 기호나 개념을 설명하거나 직접 다이어그램을 작성하는 문제가 출제될 수 있으므로 대비해야 합니다.
- 특히 관계 대응 수와 복합/다중 속성 개념에 대한 이해가 중요합니다.