문과형이과 2022. 10. 3. 14:59

1. 용어

 

릴레이션 용어 (같은 의미로 통용되는 용어)

 

릴레이션-relation (테이블-table)

스키마-schema (내포-intension)

인스턴스-instance (외연-extension, data)

튜플-tuple (행-row, 혹은 entity)

속성-attribute (열-column)

 

 

ER다이어 그램에서의 용어

Entity - 특정 되어있는 개체

 

 

2. 예시로 보는 다이어그램 분석

 

아래는 항공 예약 시스템에 대한 스키마를 보여주는 ER 다이어그램이다.

 

 

1)

위 그림에서 보면

Entity(개체) 는 Airport 로, 사각형으로 표시하며

Attribute(속성)은 city, state, atriport_code 등으로 원으로 표현한다.

 

또 이러한 속성 중 밑줄이 쳐져있는 Airport_code의 경우 key_attribute로 원에서 밑줄이 그어져 있다.

key attribute는 다른 객체들과 중복되지 않는 고유한 값으로 객체를 식별하는데 사용하는 속성이다.

 

 

2)

마름모는 Relation으로 Entity type간에 관계를 나타낸다.

또한 M과 N이 써져있는 건 M : N 관계임을 나타내며 1:1, 1:N 관계 등도 존재한다.

 

 

3) 참여 제약조건

관계를 맺는 두 entity type에 대해 한쪽 개체의 존재가 다른 쪽 개체의 존재에 의존하는 지 여부.

전체 참여란? 하나 또는 그 이상의 개체가 반드시 참여해야 하는 관계를 말하며, 실선 두개로 표시한다.

부분 참여란? 선택적인 참여가 가능하며 하나의 실선으로 표현해야 한다.

 

위 예시에서는 '비행기'는 반드시 하나 이상의 '항공기 형식'이 있어야하나

어떤 '항공기 형식'에 해당하는 '비행기'는 없어도 된다.

 

4) 최소~최대 표현

선 위에 1, N 과 같은 수가 아닌 (1, 100) 으로 써두면 1에서 100까지라는 의미

 

 

5)

약한 개체 (week entity) 와 식별 관계성 타입(identifying relationship type)

사각형 두개로 표현하는 약한 개체(week entity)는 자신의 고유한 key attribute가 없는 entity type을 뜻한다.

 

점선으로 밑줄이 그어져있는 속성(attribute)의 경우 (위 예시에서 Leg_no) partial_key(부분키) 라고 부른다.

부분키는 단독으로 존재할 수 없고 자신을 소유하고 있는 owner entity type 과 함께 사용되어야 한다.

 

또 이렇게 entity type이 약한 개체와 관계를 맺을 때 식별 관계성 타입(identifying relationship type)으로 표시하여

마름모 두개로 관계를 표현한다.