1. 데이터 모델링의 이해
1-5. 식별자
식별자 정의 (=키 정의)
- 엔터티를 구분하는 논리적인 이름
- 엔터티를 대표할 수 있는 속성
- 엔터티에는 반드시 하나의 유일한 식별자 존재
(2) 식별자 특징
- 유일성 : 주 식별자에 의해 엔터티 내 모든 인스턴스를 유일하게 구분
- 최소성 : 주 식별자를 구성하는 속성 수는 유일성을 만족하는 최소의 수
- 불변성 : 주 식별자가 한 번 특정 엔터티에 지정되면, 그 식별자 값은 변화 X
- 존재성 : 주 식별자가 지정되면, 반드시 데이터값이 존재해야 함 (Null X)
(3) 식별자(키) 분류
- 대표성을 가지는가 : 주 식별자(=PK) / 보조 식별자
- 스스로 생성될 수 있나 : 내부 식별자 / 외부 식별자
- 하나의 속성으로 식별되나: 단일 식별자 / 복합 식별자(=복합키)
- 본질 식별자 = 원래 있던 식별자
(4) 식별자 표기법

(5) 주 식별자 도출 기준 (= PK 도출 기준)
- 해당 업무에서 자주 이용되는 속성으로 지정
- 명칭, 내역처럼 이름으로 기술되는 것은 피함
- 구분자가 존재하지 않을 경우 새로운 식별자 생성 - 복합키를 구성할 경우, 너무 많은 속성으로 구성하지 않도록 해야함
(6) 식별자와 비식별자 관계
- 식별자 관계 : 자식이 부모의 기본키를 상속받아 기본키로 사용할 경우임
- Null X ⇒ 반드시 부모 엔터티가 생성되어야 자신 엔터티 생성
- 문제점 : 자식의 주 식별자 속성이 지속적으로 증가할 수 있음 = 복잡해지고, 오류가능성 유발
- 비식별자 관계 : 부모로의 속성을 받았을 때, 자식의 기본키로 사용하지 않고 일반적인 속성으로만 사용하는 경우
- 문제점 : 부모까지 조인해야되는 현상 발생 = SQL구문 길어져 성능 저하
'CERTIFICATION > SQLD' 카테고리의 다른 글
[SQLD/데이터 모델과 성능]2-2. 정규화와 성능 (0) | 2024.02.27 |
---|---|
[SQLD/데이터 모델과 성능]2-1. 성능 데이터 모델링의 개요 (0) | 2024.02.25 |
[SQLD/데이터 모델링의 이해]1-4. 관계 (0) | 2024.02.25 |
[SQLD/데이터 모델링의 이해]1-3. 속성 (0) | 2024.02.25 |
[SQLD/데이터 모델링의 이해]1-2. 엔터티 (0) | 2024.02.25 |