자격증 정리/SQLD
Chapter 01 ) 데이터 모델링의 이해 (3) - 속성
HanJW96
2023. 3. 5. 12:22
1-3. 속성 (Attribute)
속성 (Attribute)의 개념
- 업무에서 필요로 한다.
- 의미상 더 이상 분리되지 않는다.
- 엔터티를 설명하고 인스턴스의 구성요소가 된다.
* 속성은 업무에서 필요로 하는 인스턴스에서 관리하고자 하는 의미상 더 이상 분리 되지 않는 최소의 데이터 단위
엔터티, 인스턴스, 속성, 속성값의 관계
- 한 개의 엔터티는 두 개 이상의 인스턴스의 집합 이어야 한다.
- 한 개의 인스턴스는 두 개 이상의 속성을 갖는다.
- 한 개의 속성은 한 개의 속성값을 갖는다
엔터티 | 인스턴스 | 속성 | 속성값 |
#엔터티번호 | #인스턴스번호 | #속성번호 | #속성값번호 |
엔터티번호 | 인스턴스번호 | 속성번호 |
* 속성은 엔터티에 속한 엔터티에 대한 자세하고 구체적인 정보를 나타내며 각각의 속성은 구체적인 값을 갖게 된다.
* 이름, 주소, 생년월일과 같은 각각의 값을 대표하는 이름들을 속성이라 하고 홍길동, 서울시 강서구, 1967년 12월 31일과 같이 각각의 이름에 대한 구체적인 값을 속성값(VALUE)이라고 한다.
속성의 표기법 ( 바커 표기법 )
과목(엔터티) | 강사 | 사건 |
#과목번호(식별자) | #강사번호 | #사건번호 |
*과목명 | *강사명 | *발생장소 |
○교재명 | *주소 | *발생일시 |
*생성일자 | *생년월일 |
1. 속성명을 기재하고
2. 해당속성이 식별자인지 아닌지 표시하고
3. 해당 속성이 필수값(*)인지 선택값(○)인지 표시 한다.
* 속성의 표기법은 엔터티 내에 이름을 포함하여 표현하면 된다.
속성의 특징
- 엔터티와 마찬가지로 반드시 해당 업무에서 필요하고 관리하고자 하는 정보 이어야 한다. (ex 강사의 강사명)
- 정규화 이론에 근간하여 정해진 주 식별자에 함수적 종속성을 가져야 한다.
- 하나의 속성에는 한 개의 값만을 가진다. 하나의 속성에 여러 개의 값이 있는 다중 값일 경우 별도의 엔터티를 이용하여 분리한다.
ex ) 과목번호만 알고 있으면 그 과목의 과목명, 교재명, 생성일자를 알 수 있다. 과목명, 교재명, 생성일자는 과목번호에 종속되어 있다.
속성의 분류 - 특성에 따른 분류
- 속성은 업무분석을 통해 바로 정의한 속성을 기본속성(Basic Attribute)
- 원래 업무상 존재하지는 않지만 설계를 하면서 도출해내는 속성을 설계속성(Designed Atttribute)
- 다른 속성으로부터 계산이나 변형이 되어 생성되는 속성을 파생속성(Derived Attribute)이라고 한다.
상품
제품번호① | 제품명① | 제조일시① | 제조원가① | 제조사코드② |
0000000001 | LG그램12 | 2020-05-29 11:34:02 | 425,482 | LGC |
0000000002 | 갤럭시S2.4 | 2020-05-29 11:34:04 | 221,457 | SSC |
0000000003 | 애플윙 | 2020-05-29 11:34:07 | 441,454 | APC |
상품판매
제품번호① | 판매순번① | 판매일자① | 판매금액① |
0000000001 | 1 | 2020-06-05 | 600,000 |
0000000001 | 2 | 2020-06-05 | 620,000 |
0000000001 | 3 | 2020-06-05 | 600,000 |
0000000002 | 1 | 2020-06-05 | 350,000 |
0000000003 | 1 | 2020-06-05 | 650,000 |
* 제품번호 -> 식별자
일자별상품판매합계
제품번호① | 판매일자① | 판매금액합계③ |
0000000001 | 2020-06-05 | 1,820,000 |
0000000002 | 2020-06-05 | 350,000 |
0000000003 | 2020-06-05 | 650,000 |
① : 기본속성
② : 설계속성
③ : 파생속성
속성의 분류 - 엔터티 구성방식에 따른 분류
- 엔터티를 식별할 수 있는 속성을 PK(Primary Key)속성, 다른 엔터티와의 관계에서 포함된 속성을 FK(Foreign Key)속성, 엔터티에 포함되어 있고 PK,FK에 포함되지 않은 속성을 일반속성이라 한다.
속성분류 | 속성명 |
PK속성 | 부서(부서번호), 사원(사원번호) |
FK속성 (외래키) | 사원(부서번호) |
일반속성 | 부서(부서명) 사원(사원명, 우편번호, 주소, 전화번호) |
도메인(Domain)
- 각 속성은 가질 수 있는 값의 범위를 정의할 수 있는데 이를 그 속성의 도메인(Domain)이라 한다.
- 학생이라는 엔터티가 있을 때 학점이라는 속성의 도메인은 0.00에서 4.50 사이의 실수 값이며 주소라는 속성은 길이가 20자리 이내인 문자열로 정의
- 각 속성은 도메인 이외의 값을 갖지 못한다.
* 속성의 범위
속성의 명명
- 해당업무에서 사용하는 이름을 부여 한다.
- 서술식 속성명은 사용하지 않는다.
- 약어 사용은 가급적 제한한다.
- 전체 데이터모델에서 유일성 확보하는 것이 좋다.