본문 바로가기
DATABASE/CONCEPT

[DB] Attribute

by melll93 2023. 2. 26.

1. Attribute 란?

  • 엔티티를 설명할 수 있는 정보들 중, 더 이상 의미적으로 분리되지 않는 가장 작은 데이터 단위
  • 인스턴스가 엔티티를 구성하는 요소인 것처럼, 속성(Attribute)은 인스턴스를 구성하는 요소이다.
  • Entity, Instance, Attribute, Value의 관계를 다이어그램으로 보자.

  • 에를 들면, 사원 집합(Entity)은 여러 명의 사원(Instance)들로 구성되며, 각 사원은 이름, 주소, 전화번호 등 여러 속성(Attribute)로 설명 가능하고, 이 속성들은 각각의 속성값(Value)과 1:1 매칭된다.

 

2. Attribute의 조건

  • 업무에 반드시 필요로 하며, 관리해야 할 정보이어야 한다.
  • 제 2정규화 조건에 따라, 주 식별자에 함수적 종속성을 가져야 한다.
  • 하나의 속성은 반드시 하나의 속성값만을 가진다. 여러 개의 값을 가져야 한다면, 별도의 엔티티를 이용하여 분리한다.

 

3. Attribute의 분류

  • 특성에 따른 분류
    1. 기본 속성(Basic Attribute) : 설계 과정에서 바로 도출되는, 업무 상 원래 존재했던 속성이다.
    2. 설계 속성(Designed Attribute) : 업무 상에는 원래 존재하지 않지만, 설계 과정에서 필요에 의해 도출해내는 속성이다.
    3. 파생 속성(Derived Attribute) : 다른 속성으로부터 계산되거나 변형되어 생성되는 속성이다.

  • 엔티티 구성에 따른 분류
    1. 기본 키(Primary Key, PK) : 엔티티를 식별할 수 있는 속성이다.
    2. 외래 키(Foreign Key, FK) : 타 엔티티의 기본 키로, 엔티티 간의 관계를 연결해주는 속성이다.
    3. 일반 속성 : 기본 키나 외래 키가 되지 못하는 속성이다.
  • 의미에 따른 분류
    • 복합 속성(Composite Attribute) : 그 안에 세부 의미를 쪼갤 수 있는 속성. ex) 주소 = 시 + 구 + 동 + 번지
    • 단순 속성(Simple Attribute) : 더 이상 쪼갤 수 없는 가장 작은 의미의 속성. ex) 나이, 성별
  • 속성값에 따른 분류
    • 단일값 속성(Single Value Attribute) : 유일하게 존재하는 값의 속성. ex) 주민등록번호
    • 다중값 속성(Multi Value Attribute) : 여러 개의 값을 가질 수 있는 경우. ex) 전화번호 = 집 / 휴대전화 / 회사전화
      ※ 다중값 속성의 경우, 제 1 정규화에 의해 단일값 속성으로 나누거나, 별도의 엔티티를 구성해야 한다.
반응형

'DATABASE > CONCEPT' 카테고리의 다른 글

[DB] 반정규화 (De-Normalization)  (0) 2023.02.27
[DB] Relationship  (0) 2023.02.25
[DB] Entity  (0) 2023.02.24
[DB] Data Modeling  (0) 2023.02.21
[DB] 정규화 (Normalization)  (0) 2023.02.12

댓글