데이터베이스 5-2 ER모델

milkbottle·2022년 11월 27일
0

DB

목록 보기
2/13

ER 모델

Entity Relationship으로 엔티티들의 관계를 추상화할 수 있는 모델

1. 엔티티

실제 객체로 릴레이션의 외연(인스턴스)에 해당
ER 다이어그램에서 직사각형으로 표시

  • 엔티티 타입
    엔티티들의 틀로 관계형 DB에서 릴레이션의 내포(스키마)에 해당

  • 엔티티 집합
    엔티티들을의 모임

2. 애트리뷰트

하나의 엔티티 내에 존재하는 특성들의 집합
ER 다이어그램에서 타원형으로 표시

  • 키 애트리뷰트
    하나의 엔티티에서 중복되지 않고 식별할 수 있는 애트리뷰트로 밑줄을 그어 표시함

  • 강한 엔티티 타입
    키 애트리뷰트가 존재해서 엔티티 타입 내에서 엔티티끼리 식별이 가능한 것

  • 약한 엔티티 타입
    키 애트리뷰트를 가지기엔 충분한 애트리뷰트가 없는 것, 추후 설명

애트리뷰트 특성

애트리뷰트는 단순<->복합, 단일 값<->다치, 저장된<->유도된으로 구분

단순 애트리뷰트

더 이상 다른 애트리뷰트로 나눌 수 없는 애트리뷰트

복합 애트리뷰트

애트리뷰트에서 또 다른 여러 애트리뷰트로 나눌 수 있는 애트리뷰트

단일 값 애트리뷰트

여러가지 값을 가지지 못하는 단일한 값의 애트리뷰트
실제 관계형 DB에서는 모든 애트리뷰트가 원자값으로 있어야하는 도메인 제약조건 때문에 단일 값 애트리뷰트로 존재

다치 애트리뷰트

여러가지 값으로 가질 수 있는, 집합의 값을 가지는 애트리뷰트
ER 다이어그램에서 쌍타원형으로 표시

저장된 애트리뷰트

다른 애트리뷰트의 도움없이 독립적으로 존재하는 애트리뷰트

유도된 애트리뷰트

다른 애트리뷰트와 연관관계가 있어서 유도할 수 있는 애트리뷰트
ER 다이어그램에서 점타원형으로 표시

약한 엔티티 타입

약한 엔티티 타입은 키를 형성하기에 충분한 애트리뷰트를 갖지 못하기에 소유 엔티티 타입에게 키 애트리뷰트를 제공받음
ER 다이어그램에서 쌍직사각형으로 부분 키는 점밑줄로 표시

3. 관계

엔티티들 사이에 어떤 존재로 연관되어있는지를 설명
ER 다이어그램에서 마름모로 표시

전체 참여와 부분 참여

  • 전체참여
    겹실선으로 표시하며 관계에 모두 참여함을 의미

  • 부분참여
    실선으로 표시하며 관계에 모두 다 참여할 필요는 없음을 의미

차수

관계로 연결된 엔티티 타입들의 개수를 의미
실세계에서 가장 흔한 것은 두 개의 엔티티 타입이 연결된 2진 관계

카디날리티 비율

한 엔티티가 참여할 수 있는 관계의 수
아래와 같이 1:1, 1:N, N:M으로 구분

관계에 최소 얼마나 참여하는지 최대 얼마나 참여하는지를 명시

역할

하나의 관계타입에 하나의 엔티티 타입이 여러 번 나타나는 경우 역할 표기

ER 스키마를 작성하기 위한 지침

다치 애트리뷰트는 관계형 DB에서 도메인 제약조건을 위배하므로 엔티티로 묶어서 분류

4. ER 다이어그램 표기법

ER 표기법 요약

또 다른 새발 표기법

  1. 1:1 관계, A와 B 모두 부분참여
  2. 1:N 관계, A와 B 모두 부분참여
  3. M:N 관계, A와 B 모두 부분참여
  4. 1:1관계, A는 전체참여, B는 부분참여
  5. 1:N 관계, A는 전체참여, B는 부분참여
  6. M:N 관계, A는 전체참여, B는 부분참여

0개의 댓글

관련 채용 정보