민규의 흔적

[오라클 DB] ER(Entity Relationship) 모델 - 관계와 관계 타입 본문

데이터베이스

[오라클 DB] ER(Entity Relationship) 모델 - 관계와 관계 타입

민규링 2023. 10. 22. 23:32

ER 모델

 

데이터베이스 설계를 용이하게 하기 위해 Peter Chen이 1976년에 제안하였다.

 

개체와 개체 간의 관계를 이용해 현실 세계를 개념적 구조로 표현한 모델이다.

 

기본적인 구문으로는 엔티티, 관계, 애트리뷰트가 있고, 기타 구문으로는 카디날리티 비율, 참여 제약조건 등이 있다.

 


관계

 

관계는 엔티티들 사이에 존재하는 연결로서, 두 개 이상의 엔티티 타입들 간의 사상을 의미한다.

 

 

관계 타입

 

관계 타입은 동질의 관계들의 틀이다. (동사)

 

관계 집합동질의 관계들의 집합을 의미하며, 관계 집합과 관계 타입을 엄격하게 구분할 필요는 없다.

 

 

요구사항 명세에서 흔히 동사는 ER 다이어그램에서 관계로 표현된다.



EMPLOYEE 엔티티 타입과 DEPENDENT 엔티티 타입은 POLICY 라는 관계를 가지고 있음을 알 수 있다.

 

ER 다이어그램에서 관계는 다이아몬드로 표기하며, 만약 관계로 사상된 두 엔티티 타입 중,약한 엔티티 타입이 존재한다면 해당 관계는 이중 다이아몬드로 표기한다.

 

 

 

 

관계 타입은 키 애트리뷰트를 갖지 않지만, 관계에 참여하는 엔티티 타입의 애트리뷰트를 가지고 관계의 특징을 기술할 수 있다.

 

 

 

관계 타입의 의미를 명확하게 하기 위해 역할(role)을 기입하기도 하며, 특히 하나의 관계 타입에 하나의 엔티티 타입이 여러 번 나타나는 경우에는 반드시 역할을 표기해야 한다.

 

관계 타입의 간선 위에 표시한다.

 

 

 

다중 관계

 

두 엔티티 타입 사이에 두 개 이상의 관계 타입이 존재할 수 있다.

 

 

 

 

순환적 관계

 

하나의 엔티티 타입이 동일한 관계 타입에 두 번 이상 참여하는 것을 의미한다.