본문 바로가기
[자격증] SQLD(SQL개발자)/↘ 데이터 모델링의 이해

[ SQLD ] 데이터 모델링의 이해 - 5. 식별자 ( Identifiers )

by 승큐리티 2020. 5. 20.

[ SQLD ] 

1. 데이터 모델링의 이해

 1-5. 식별자

1. 식별자 ( Identifiers )
여러개의 속성 중 엔터티를 대표 할 수 있는 속성

2. 주식별자(기본 키) 5가지 특징
유일성 - 주식별자는 모든 인스턴스를 유일하게 구분가능하다.
최소성 - 주식별자를 구성하는 속성 수는 1개여야한다. ex) 학번 속성으로 구분가능한데 학번과 번호를 섞어서 구성 X
불변성 - 주식별자는 자주 변경되지 않아야한다.
존재성 - 주식별자는 항상 데이터 값이 있어야한다.
대표성 - 주식별자는 엔터티를 대표 할 수 있어야한다.

키의종류

키 종류 설명
기본키 (PK) 엔터티 대표 키
후보키 (CK) 유일성과 최소성 만족하지만 대표성 부족
슈퍼키 (SK) 유일성은 만족하지만 최소성 부족
대체키 (AK) 후보키 중 기본키를 선정하고 남은 키
외래키 (FK) 다른테이블 기본 키 필드를 참조 한 키

 

3. 식별자 분류
대표성 여부
- 주식별자 : 엔터티를 대표하는 식별자로 다른 엔터티와 참조관계를 연결 할 수 있다. -> 기본키
- 보조식별자 : 대표성을 가지지 못해 참조관계 연결 할 수 없다. -> 후보키

엔터티 내 생성 여부
- 내부 식별자 : 엔터티 내부에서 스스로 만들어지는 식별자
- 외부 식별자 : 타 엔터티와의 관계를 통해 생성 되는 식별자

단일 속성 여부
- 단일 식별자 : 하나의 속성으로 구성된 식별자
- 복합 식별자 : 두 개 이상의 속성으로 구성된 식별자

대체 여부
- 본질 식별자 : 업무로 인해 만들어지는 식별자
- 인조 식별자 : 인위적으로 만들어지는 식별자

인조 식별자 특징
1. 최대한 범용적인 값을 사용해서 만든 식별자
2. 유일한 값을 만들기 위해 사용
3. 하나의 인조 식성으로 대체 불가능
4. 편의성 ·단순성 확보를 위해 사용
5. 의미의 체계화를 위해 사용
6. 내부적으로만 사용

4. 식별자관계 , 비식별자관계
식별자관계 (실선으로 표시, 강한 연결(종속)관계)
부모의 주식별자가 자식의 주식별자가 되는 경우를 식별자 관계라고 한다.
Ex) 카드결제는 카드가 있어야 생기는 엔터티이다. 이런경우를 부모관계라고 표현한다.
     여기서 , 카드 엔터티의 카드번호 주식별자(기본 키)를 결제 엔터티의 주식별자(기본 키)로 지정했다.
     FK는 Foreign Key로 외래키라는 뜻이다. 다른 엔터티의 기본 키를 참조한 키라고 해석하면된다.
     이런경우를 식별자 관계라고 한다.

비식별자관계 (점선으로 표시, 약한 연결(종속)관계)
부모의 주식별자가 자식의 주식별자가 되지 않고 그냥 속성으로 사용하는 경우를 비식별자 관계라고 한다.
Ex) 카드AS는 카드가 있어야 생기는 엔터티이다. 하지만 식별관계처럼 카드번호를 기본키로 사용하지 않고
     카드AS번호를 기본 키로 사용한다. 부모 엔터티 주식별자(카드번호)를 그냥 속성으로만 사용하였다.
     이런 경우를 비식별자 관계라고 한다.

댓글