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

- 에를 들면, 사원 집합(Entity)은 여러 명의 사원(Instance)들로 구성되며, 각 사원은 이름, 주소, 전화번호 등 여러 속성(Attribute)로 설명 가능하고, 이 속성들은 각각의 속성값(Value)과 1:1 매칭된다.
2. Attribute의 조건
- 업무에 반드시 필요로 하며, 관리해야 할 정보이어야 한다.
- 제 2정규화 조건에 따라, 주 식별자에 함수적 종속성을 가져야 한다.
- 하나의 속성은 반드시 하나의 속성값만을 가진다. 여러 개의 값을 가져야 한다면, 별도의 엔티티를 이용하여 분리한다.
3. Attribute의 분류
- 특성에 따른 분류
- 기본 속성(Basic Attribute) : 설계 과정에서 바로 도출되는, 업무 상 원래 존재했던 속성이다.
- 설계 속성(Designed Attribute) : 업무 상에는 원래 존재하지 않지만, 설계 과정에서 필요에 의해 도출해내는 속성이다.
- 파생 속성(Derived Attribute) : 다른 속성으로부터 계산되거나 변형되어 생성되는 속성이다.

- 엔티티 구성에 따른 분류
- 기본 키(Primary Key, PK) : 엔티티를 식별할 수 있는 속성이다.
- 외래 키(Foreign Key, FK) : 타 엔티티의 기본 키로, 엔티티 간의 관계를 연결해주는 속성이다.
- 일반 속성 : 기본 키나 외래 키가 되지 못하는 속성이다.
- 의미에 따른 분류
- 복합 속성(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 |
댓글