본문 바로가기
Database

[SQLD] 엔터티(ENTITY), 속성(ATTRIBUTE), 관계(RELATION)

by pin9___9 2022. 9. 2.
728x90

ERD란?


Entity Relationship Diagram
개체-관계 모델. 테이블 간의 관계를 설명해주는 다이어그램이라고 볼 수 있으며,
이를 통해 프로젝트에서 사용되는 DB의 구조를 한눈에 파악할 수 있다.

즉, API를 효율적으로 뽑아내기 위한 모델 구조도라고 생각하면 된다.
  • 1976년 피터첸에의해 만들어졌다.
  • 일반적으로 엔터티 도출 → 배치 → 관계 설정 → 관계명 기술의 흐름으로 작업을 진행한다.
  • 관계의 명칭은 관계에 있어서 매우 중요한 부분에 해당한다.
  • 가장 중요한 엔터티를 왼쪽 상단에 배치하고 이를 중심으로 왼쪽 → 오른쪽 방향으로 나열하면서 위 → 아래로 전개한다.
  • 관계를 연결할 때 존재와 행위를 구분하지 않고 표현한다.

 

1) ERD 작성 순서


  1. 엔터티를 그린다.
  2. 엔터티를 적절하게 배치.
  3. 엔터티 간의 관계를 설정.
  4. 관계명 기술.
  5. 관계의 참여도 기술.
  6. 관계의 필수 여부를 기술.

 


 

엔터티(ENTITY)


  • 반드시 해당 업무에서 필요하며 관리하고자 하는 정보여야 한다.
  • 지속적으로 존재하는 2개 이상의 인스턴스의 집합이어야 한다.
  • 반드시 속성을 가져야 한다.
  • 엔터티는 다른 엔터티와 최소 한 개 이상의 관계가 있어야 한다.

 

엔터티 종류


1) 발생 시점에 따른 분류

2) 유무에 따른 분류

 

엔터티 명명 기준


  1. 업무 용어를 사용
  2. 약어 사용은 자제
  3. 단수 명사 사용
  4. 유일한 이름을 부여
  5. 생성하는 의미대로 이름 부여

 

엔터티, 인스턴스, 속성, 속성값의 관계


  • 한 개의 엔터티는 두 개 이상의 인스턴스의 집합이어야 한다.
  • 한 개의 엔터티는 두 개 이상의 속성을 갖는다.
  • 한 개의 속성은 한 개의 속성값을 갖는다.

 


 

속성(ATTRIBUTE)


 

업무에서 필요로 하는 인스턴스로 관리하고자 하는 의미상 더 이상 분리되지 않는 최소의 데이터 단위

 

속성의 특성에 따른 분류


 

도메인(Domain)


  • 각 속성의 가질 수 있는 값의 범위를 그 속성의 도메인이라 한다
  • 도메인은 엔터티 내에서 속성에 대한 데이터 타입과 크기 그리고 제약사항을 지정하는 것이다.

 

속성의 명명


  1. 업무에서 사용하는 용어 사용
  2. 약어의 사용은 가급적 자제
  3. 서술식 이름을 사용하지 않도록 한다.
  4. 유일한 이름 부여

 


 

관계(RELATION)


ERD에서는 존재적 관계와 행위에 의한 관계를 구분하지 않지만 클래스다이어그램에서는 이것을 구분하여 연관관계와 의존관계로 표현한다. UML(Unified Modeling Language)에는 클래스다이어그램의 관계 중 연관관계(Association)와 의존관계(Dependency)가 있고 이것은 실선과 점선의 표기법으로 다르게 표현한다.

 

관계의 표기법


  • 관계명(Membership) : 관계의 이름
  • 관계차수(Cardinally) : 1:1, 1:M, M:N
  • 관계선택사양(Optionality) : 필수 관계, 선택 관계
728x90

'Database' 카테고리의 다른 글

[SQL] 필드명이 예약어일 경우...!!  (0) 2023.01.13
[SQL] 데이터 타입(Data Type)  (0) 2023.01.12
[SQL] 테이블의 구조와 설명을 알 수 있는 desc!!  (0) 2023.01.11
[SQLD] SELECT, NULL  (0) 2022.09.02
[SQLD] DBMS  (0) 2022.09.02

댓글