속성
: 업무에서 필요로 하는 인스턴스에서 관리하고자 하는 의미상 더 이상 분리되지 않는 최소의 데이터 단위
: 엔터티에 대한 자세하고 구체적인 정보 나타냄
: 하나의 엔터티는 두개 이상의 속성을 가짐
: 하나의 인스턴스에서 각각의 속성은 한개의 속성값을 가질 수 있음
: 속성도 집합임
속성의 특성에 따른 분류
1. 기본속성
2. 설계속성
3. 파생속성: 데이터를 조회할 때 빠른 성능을 낼 수 있게 원래 속성의 값을 계산하여 저장할 수 있도록 만든 속성
도메인: 각 속성이 가질 수 있는 값의 범위
속성의 명칭
- 현업의 업무 용어 사용
- 지나친 약어 사용은 지양
- 유일한 이름
- 분명한 의미
- 서술식 X
관계
존재적 관계 | 행위에 의한 관계 |
ex) 부서, 사원의 '소속' 관계 | ex) 주문, 배송의 '배송근거' 관계 |
데이터모델링에서는 존재적 관계와 행위에 의한 관계를 구분하는 표기법이 없음
UML에서는 연관관계(실선) and 의존관계 (점선)에 대해 다른 표기법을 가지고 표현
관계의 표기법
1. 관계명
2. 관계차수 (1:1, 1:M, M:N)
3. 선택성 (필수관계, 선택관계)
관계 도출 시 체크할 사항
- 두개의 엔터티 사이에 관심있는 연관규칙이 존재하는가?
- 두개의 엔터티 사이에 정보의 조합이 발생하는가?
- 업무기술서, 장표에 관계연결에 대한 규칙이 서술되어있는가?
- 업무기술서, 장표에 관계연결을 가능하게 하는 동사(verb)가 있는가?
식별자
식별자의 종류
- 대표성 있으면 주식별자
- 주식별자가 한번 특정 엔터티에 지정되면 그 식별자의 값은 변하지 않아야 함 (불변성)
- 반드시 값이 있음 (존재성)
- 주식별자에 의해 엔터티 내의 모든 인스턴스들이 유일하게 구분되어야 함 (유일성)
- 주식별자를 구분하는 속성의 수는 유일성을 만족하는 최소의 수 (최소성)
- 대표성 없으면 보조식별자
- 엔터티 내에서 스스로 생성되었으면 내부식별자
- 엔터티 내에서 스스로 생성되지 않았으면 외부식별자
- 단일속성으로 구분이 되면 단일식별자
- 단일속성으로 구분이 안되면 복합식별자
- 업무에 의해 만들어지는 식별자이면 본질식별자
- 업무적으로 만들어지지는 않지만 원조식별자가 복잡한 구성을 가지고 있기 때문에 인위적으로 만든 식별자이면 인조식별자
식별자관계 | 비식별자관계 |
강한 연결관계 표현 | 약한 연결관계 표현 |
실선 | 점선 |
자식 주식별자의 구성에 포함됨 | 자식 일반속성에 포함됨 |
- 반드시 부모엔터티 종속 - 자식 주식별자구성에 부모 주식별자포함 필요 - 상속받은 주식별자속성을 타 엔터티에 이전 필요 |
- 약한 종속관계 -자식 주식별자구성을 독립적으로 구성 - 자식 주식별자구성에 부모 주식별자 부분 필요 - 상속받은 주식별자속성을 타 엔터티에 차단 필요 - 부모쪽의 관계참여가 선택관계 |
'SQLD' 카테고리의 다른 글
[SQLD 1과목] 데이터 모델링의 이해 (모델링, 스키마, ERD, 엔터티) (0) | 2023.06.10 |
---|