식별자 개념

식별자(Identifier)란 여러 개의 집합체를 담고 있는 하나의 엔티티타입에서 각각의 엔티티를 구분할 수 있는 결정자다.
모든 엔티티타입에는 반드시 하나 이상의 식별자가 있어야 한다.
식별자는 데이터베이스로 구현했을 때 데이터 처리 기준이 되는 PK, FK 등의 역할을 수행한다.


식별자 특징

식별자에 의해 엔티티타입 내 모든 엔티티들이 유일하게 구분되어야 한다.
특정 엔티티타입에 식별자가 지정되면 그 식별자는 변하지 않아야 한다.
주식별자의 경우 식별자가 지정되면 주식별자 속성에 반드시 데이터값이 있어야 한다.


식별자 구분

1. 주식별자 / 보조 식별자
주식별자는 엔티티타입의 대표성을 나타내는 유일한 식별자이다.
보조 식별자는 주식별자를 대신하여 보조적으로 엔티티를 식별할 수 있게 한다.
주식별자는 엔티티타입 하나에 한 개인 반면 보조 식별자는 엔티티타입 하나에 두 개 이상일 수 있다.
물리 테이블에서는 주식별자가 PK 역할을 하는 반면, 보조 식별자는 Unique Index 로 지정되어 사용된다.

2. 내부 식별자 / 외부 식별자
내부 식별자는 스스로 생성되어 존재하는 식별자를 말한다.
외부 식별자는 다른 엔티티타입으로부터 관계에 의해 주식별자 속성을 상속받아 자신의 속성에 포함되는 식별자이다.
외부 식별자는 주식별자 영역에 포함될 수도 있고, 일반 속성에 포함될 수도 있다.
외부 식별자는 자신의 엔티티타입으로부터 다른 엔티티타입을 찾아가는 연결자(FK) 역할을 한다.

3. 단일 식별자 / 복합 식별자
주식별자의 구성이 한 가지 속성으로만 이루어진 경우를 단일 식별자라 한다.
두 개 이상의 속성으로 구성된 경우는 복합 식별자라고 한다.

4. 원조 식별자 / 대리 식별자
주식별자의 속성이 복합 식별자일 경우 여러 개의 속성을 묶어 하나의 속성으로 만들어 주식별자로 활용하는 식별자와 주식별자 속성을 일반 속성으로 내리고, 일련번호 형태를 사용하는 경우 주식별자로 사용된 일련번호를 대리 식별자(Surrogate Identifier)라고 한다.

WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,