데이터베이스에서 엔터티(데이터 단위) 간의 관계를 시각적으로 표현한 다이어그램이다. 시스템이 어떤 데이터를 저장하고, 그것들이 어떻게 연결되어 있는지를 한눈에 보여준다.

 

구성 요소

구성 요소  설명  예시
Entity (엔터티) 정보를 저장할 대상(테이블) 사용자, 주문, 상품
Attribute (속성) 엔터티가 가진 세부 정보(컬럼) 사용자ID, 이메일
Relationship (관계) 엔터티 간의 연결성 사용자 - 주문 관계

 

관계(Cardinality)의 유형

관계  설명  예시
1:1 (일대일) 한 엔터티가 다른 엔터티와 1:1로 연결 사용자 ↔ 기본주소
1:N (일대다) 한 엔터티가 다른 엔터티 여러 개와 연결 사용자 ↔ 주문
N:M (다대다) 여러 엔터티가 서로 다수와 연결 주문 ↔ 상품

 

N:M 관계는 직접 구현되지 않음 → 중간 테이블 생성 필수 (예: 주문상품)

관계 설명 예시
식별자 실선으로 표현
부모 자식 관계에서 자식이 부모의 주 식별자를 외래 식별자로 참조하여 자신의 주 식별자로 설정
학생-신체정보(학생 PK=신체정보 PK)
비식별자 점선으로 표현
부모 자식 관계에서 부모의 주 식별자를 외래 식별자로 참조해서 일반 속성으로 사용
사원-사원증(각 사원은 반드시 하나의 사원증만 가짐)

 

ERD 작성 방법

① 요구사항 분석

  • 비즈니스 로직을 정리하고 저장해야 할 정보를 추출
  • 핵심 엔터티 도출 (예: 사용자, 주문, 상품 등)

② 엔터티 도출 및 속성 정의

  • 각 엔터티의 속성(컬럼)을 식별 (ID, 이름, 날짜 등)
  • Primary Key, Unique, Not Null 등 제약 조건 함께 정의

③ 관계(Relationship) 설정

  • 각 엔터티 간의 연관성 식별 (1:1, 1:N, N:M)
  • 다대다 관계는 중간 엔터티로 분해 (예: 주문상품)

④ ERD 도식화

  • 시각적 다이어그램으로 구성
  • 관계선에 관계명, 방향성, 카디널리티(1:1, 1:N, N:M 등) 표시

 

1:1 관계 (One-to-One Cardinality)

도서의 평점,리뷰수 등은 책 한권에 한 정보만을 가진다.

 

1:N 관계 (One-to-Many Cardinality)

한 사용자는 여러 리뷰(1개 이상)를 작성할 수 있다.

 

 

한 도서에 대해서 여러 리뷰(0개 이상)를 가질 수 있다.

 

N:M 관계 (Many -to-Many Cardinality)

도서는 여러 저자(1개 이상)를 가질 수 있다.

저자 또한 여러 권의 책(1개 이상)을 쓸 수 있다

.

'개발지식' 카테고리의 다른 글

프로세스와 쓰레드  (0) 2025.03.06
RAM 영역  (0) 2025.03.04

+ Recent posts