cs/DB

[데이터베이스/Database] 개체 타입과 애트리뷰트 (단순/복합/단일값/다중값/유도/저장/널)

hrniin 2021. 1. 16. 22:22
728x90


 
 
 
1. 개체 타입
 
개체(entity): 단독으로 존재할 수 있으며 다른 것과 구별되는 객체(object)
개체 타입(entity type): 이름과 애트리뷰트들로 정의
개체 집합(entity set): 특정 개체 타입에 대한 인스턴스들의 집합
 
- 단순 애트리뷰트(simple attribute): 더 이상 작은 구성요소로 분해할 수 없는 애트리뷰트
- 복합 애트리뷰트(composite attribute): 몇 개의 기본적인 단순 애트리뷰트들로 분해할 수 있는 애트리뷰트
 
- 단일 값 애트리뷰트(single-valued attribute): 특정 개체에 대해 하나의 값을 갖는 애트리뷰트. 원자 값(atomic value). 예를 들어 학생 개체 타입의 이름 애트리뷰트는 각 개체에 하나의 값만을 가질 수 있다.
- 다중 값 애트리뷰트(multivalued attribute): 한 개체에 대해 몇 개의 값을 가지고 있는 애트리뷰트. 예를 들어 학생 개체 타입의 취미 애트리뷰트는 각 개체에 여러 개의 값을 가질 수 있다.
 
- 유도 애트리뷰트(derived attribute): 다른 관련된 애트리뷰트나 개체가 가지고 있는 값으로부터 유도되어 결정되는 애트리뷰트.
- 저장 애트리뷰트(stored attribute): 유도 애트리뷰트를 생성하는데 사용된 애트리뷰트.
예를 들어 과목별 평균 성적을 표현하는 과목-성적 개체 타입이 평균 성적 애트리뷰트를 포함하고 있고, 평균 성적 애트리뷰트는 등록 개체 타입의 성적 애트리뷰트 값을 계산한 결과로 얻어진다고 할 때, 평균 성적 애트리뷰트는 유도 애트리뷰트이고 성적 애트리뷰트는 저장 애트리뷰트이다.
 
- 널 애트리뷰트(null attribute): 널 값을 갖는 애트리뷰트.
 
* 널 값(null value): 어떤 개체 인스턴스가 어느 특정 애트리뷰트에 대한 값을 가지고 있지 않을 때 이를 명시적으로 표시하기 위해 사용.
① 애트리뷰트 값이 그 개체에 해당되지 않는(not applicable) 경우
② 애트리뷰트 값을 알 수 없는(unknown) 경우
③ 애트리뷰트 값이 존재하지만 값이 누락(missing)인 경우
④ 애트리뷰트 값이 존재하고 있는지조차 알 수 없어 모르는(not known) 경우
 
 

728x90