[SQLD] 엔터티, 속성, 관계

icebox127·2025년 9월 7일

SQLD

목록 보기
2/8

엔터티

1. 엔터티의 개념

다양한 정의

  • 변별할 수 있는 사물
  • 데이터베이스 내에서 변별 가능한 객체
  • 정보를 저장할 수 있는 어떤것
  • 정보가 저장될 수 있는 사람, 장소, 물건, 사건 그리고 개념 등
  • 업무에 필요하고 유용한 정보를 저장하고 관리하기 위한 집합적인 것

엔터티 정의의 공통적인 사항

  • 엔터티는 사람, 장소, 물건, 사건 , 개념 등의 명사에 해당함
  • 엔터티는 업무상 관리가 필요한 관심사에 해당함
  • 엔터티는 저장이 되기 위한 어떤 것임

2. 엔터티와 인스턴스에 대한 내용과 표기법

엔터티 - 인스턴스

3. 엔터티의 특징

업무에서 필요로 하는 정보

반드시 시스템을 구축하고자 하는 업무에서 필요로 하고 관리하고자 하는 정보여야 함

식별 가능해야 함

유일한 식별자는 그 엔터티의 인스턴스만의 고유한 이름임. 두 개 이상의 엔터티를 대변하면 그 식별자는 잘못 설계된 것

인스턴스 집합이어야 함

엔터티의 특징 중 “한 개”가 아니라 “두 개 이상”이라는 집합개념은 매우 중요함

예) 회사 데이터베이스에서 회사는 하나이므로 엔터티 성립 X

업무 프로세스에 의해 이용

업무프로세스에 의해 전혀 이용되지 않는다면 업무 분석이 정확하게 안 되어 엔터티가 잘못 선정되거나 업무 프로세스 도출이 적절하게 이루어지지 않았음을 의미함

속성 포함

예외적으로 관계 엔터티의 경우는 주식별자 속성만 가지고 있어도 예외로 인정

관계의 존재

다른 엔터티와 최소 한 개 이상의 관계가 존재해야함

만약 관계가 없다면 잘못된 엔터티이거나 관계 누락 가능성이 큼

4. 엔터티의 분류

유무형에 따른 분류

  • 유형
  • 사건
  • 개념

발생시점에 따른 분류

  • 기본/키
  • 중심
  • 행위

5. 엔터티의 명명

  • 가능하면 현업업무에서 사용하는 용어를 사용
  • 가능하면 약어를 사용하지 않음
  • 단수명사 사용
  • 모든 엔터티에서 유일하게 이름이 부여되어야 함
  • 엔터티 생성의미대로 이름을 부여

속성

1. 속성의 개념

사전적 의미로 사물의 성질, 특징 또는 본질적인 성질, 그것이 없다면 실체를 생각할 수 없는 것으로 정의

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

업무에서 필요로 함

2. 엔터티, 인스턴스와 속성, 속성값에대한 내용과 표기법

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

속성 표기법

3. 속성의 특징

  • 엔터티와 마찬가지로 반드시 해당 업무에서 필요하고 관리하고자 하는 정보여야 함
  • 정규화 이론에 근간하여 정해진 주식별자에 함수적 종속성을 가져야 함
  • 하나의 속성에는 한 개의 값만을 가짐. 하나의 속성에 여러 개의 값이 있는 다중값일 경우 별도의 엔터티를 이용하여 분리함

4. 속성의 분류

특성에 따른 분류

  • 기본 속성: 업무 분석을 통해 바로 정의한 속성
  • 설계 속성: 원래 업무상 존재하지는 않지만 설계를 하면서 도출해내는 속성
  • 파생 속성: 다른 속성으로부터 계산이나 변형이 되어 생성되는 속성

앤터티 구성방식에 따른 분류

  • PK 속성: 엔터티를 식별할 수 있는 속성
  • FK 속성: 다른 엔터티와의 관계에서 포함된 속성
  • 일반 속성: PK, FK에 포함되지 않은 속성

5. 속성의 명명

  • 해당 업무에서 사용하는 이름을 부여함
  • 서술식 속서술식 속성명은 사용하지 않음
  • 약어 사용은 가급적 제한함
  • 전체 데이터모델에서 유일성을 확보하는 것이 좋음

관계

1. 관계의 개념

관계의 정의

  • 상호 연관성이 있는 상태
  • 엔터티의 인스턴스 사이의 논리적인 연관성으로서 존재의 형태로서나 행위로서 서로에게 연관성이 부여된 상태

관계의 패어링

각각의 엔터티의 인스턴스들은 자신이 관련된 인스턴스들과 관계의 어커런스로 참여하는 형태

2. 관계의 분류

관계가 존재에 의한 관계와 행위에 의한 관계로 구분될 수 있는 것은 관계를 연결함에 있어 어떤 목적으로 연결되었느냐에 따라 분류하기 때문임

3. 관계의 표기법

관계명

엔터티에서 관계가 시작되는 편을 관계시작점이라고 부르고 받는 편을 관계끝점이라고 부름.

관계 시작점과 끝점 모두 관계 이름을 가져야하며 참여자의 관점에 따라 관계이름이 능동적이거나 수동적으로 명명됨.

관계명 명명규칙

  • 애매한 동사를 피하기
  • 현재형으로 표현하기

관계차수

  • 두 개의 엔터티간 관계에서 참여자의 수를 표현하는 것을 관계차수라고 함
  • 가장 일반적인 관계차수 표현 방법은 1:M, 1:1, N:M임
  • Crow’s Foor 모델에서는 선을 이용하여 관계차수 표현
    • 원형: 0개
    • 해쉬마크: 1개
    • 까마귀발: 2개 이상(N)

관계 선택사양

  • 참여하는 엔터티가 항상 참여하는지 아니면 참여할 수도 있는지를 나타내는 방법이 필수참여와 선택참여임
  • 선택참여관계는 ERD에서 관계를 나타내는 선에서 선택참여하는 엔터티 쪽을 원으로 표시함. 필수 참여는 아무런 표시를 하지 않음

4. 관계의 정의 및 읽는 방법

관계 체크사항

  • 두 개의 엔터티 사이에 관심있는 연관규칙이 존재하는가?
  • 두 개의 엔터티 사이에 정보의 조합이 발생되는가?
  • 업무기술서, 장표에 관계연결에 대한 규칙이 서술되어 있는가?
  • 업무기술서, 장표에 관계연결을 가능하게 하는 동사가 있는가?

관계 읽기

  • 기준 엔터티를 한 개 또는 각으로 읽는다
  • 대상 엔터티의 관계참여도 즉 개수를 읽는다
  • 관계선택사향과 관계명을 읽는다
profile
감자의 공부기록🥔

0개의 댓글