Database/DB Theory

[DB 이론] 데이터 베이스 개념적 설계 - ER모델 (Entity-Relationship Model)

Nirsa 2020. 2. 3. 14:27
반응형

 

  • ER모델 (Entity-Relationship Model)

ER모델은 피터 첸이 제안한 개념적 데이터 모델로써 현실 세계를 개체와 개체 간의 관계를 이용하여 개념적 구조로 표현하여 ERD(Entity-Relationship Diagram)으로 작성할 수 있습니다.

 

  • 개체, 속성, 관계

개체는 현실 세계에서 꼭 필요한 사람이나 사물과 같이 구별되는 모든 것을 가르키며 데이터로써 DB에 저장할 가치가 있는 중요한 사람, 사물, 개념, 사건 등을 뜻 하며 최소 하나 이상의 개체를 가지고 있어야 합니다. (ex. 학원에 필요한 개체 : 학생, 수업 등)

속성은 개체나 관계가 가지고 있는 고유의 특성으로 DB에 저장할 데이터의 가장 작은 논리적 단위 입니다. (ex. 학생 개체의 속성 : 학생의 이름, 학생의 성별, 학생의 핸드폰 번호 등)

속성 유형 설명
단일 값 속성 값을 하나만 가질 수 있는 속성 (ex. 학생의 학번 등)
다중 값 속성 값을 여러 개 가질 수 있는 속성 (ex. 학생의 취미 등)
단순 속성 의미를 더는 분해할 수 없는 속성 (ex. 학생의 성별 등)
복합 속성 의미를 분해할 수 있는 속성 (ex. 생년월일을 년, 월, 일로 분해 가능)
유도 속성 기존의 다른 속성의 값에서 유도되어 결정되는 속성 (ex. 주민등록번호 앞자리를 통해 생일을 얻을 수 있음)
널 속성 아직 결정되지 않았거나 존재하지 않는 값을 가진 속성 (공백, 0과는 다름)
키 속성 각 개체를 식별하는 데 사용되는 속성 (둘 이상의 속성들로 구성)

 

관계는 서로 다른 개체가 맺고 있는 의미 있는 연관성을 뜻합니다. 즉, 개체 사이의 대응 관계(매핑)를 뜻합니다.

 

  • ERD(Entity-Relationship Diagram) 구성 요소

ER다이어그램은 아래와 같이 그림으로 표현되는 구성 요소들이 있습니다.

각각의 참여나 관계 등에 따라 각 테이블을 이어주는 선이 변경 됩니다. 1:1 관계(남자-여자), 1:n 관계(학교-학생), n:m 관계(학생-수업) 등이 있으며 참여 부분은 아래와 같습니다. 

선택적 참여(부분 참여) : 개체 중 일부만 관계에 참여해도 되는 것을 의미 (ex. 도서 개체가 고객 개체와의 구매 관계에 선택적으로 참여)

필수적 참여(전체 참여) : 개체가 관계에 반드시 참여 해야 하는것을 의미 (ex. 학생 개체가 수업 개체와의 수강 관계에 필수적으로 참여)

 

반응형