식별자
- 각 인스턴스를 구분할 수 있게 하는 대표 속성
-> 엔터티 필수 요소
+) DB에서는 키라고도 함
특징
- 유일성 : 중복 X
- 최소성 : 하나의 속성으로 구분 가능시 추가 X
- 불변성 : 바뀜 안됨
- 존재성 : null 안됨
분류
대표성 여부
- 주식별자 : 대표성을 나타내는 식별자 (PK)
- 보조 식별자 : 주식별자가 아닌 식별자 (Cadidate Key)
자체 생성 여부
- 내부 식별자 : 엔터티 내부에서 자체 생성
- 외부 식별자 : 관계를 통해 생성 (FK)
속성 수
- 단일 식별자 : 1개의 속성
- 복합 식별자 : 둘 이상 속성
대체 여부
- 본질 식별자 : 업무에 의해 생성 (=원조 식별자)
- 인조 식별자 : 인위적으로 원조 식별자로 만듦
키 종류
- 기본키 (Primary Key) : 후보키 중 대표성 있는 거
- 후보키 (Cadidate Key) : 유일성 + 최소성
- 대체키 (Alternative Key) : 기본키 아닌 후보 키
식별자와 비식별자 관계
식별자 관계
- 자식이 부모를 주식별자로 포함
-실성 표기
-> SQL의 Join 최소화 (부모: Strong, 자식 : weak)
-> 자식은 부모 있어야 존재
비식별자 관계
- 자식이 외래키로 부모 주식별자 가짐
- 부모 없이 생성 가능
- 점선 표기
-> 독립적으로 생성 가능
-> SQL 복잡도 상승