식별자
식별자는 엔터티 내에서 인스턴스를 구분하는 구분자입니다.
식별자는 논리 데이터 모델링 단계에서 사용하고 Key는 물리 데이터 모델링 단계에서 사용합니다.
특징
유일성 : 주식별자에 의해 모든 인스턴스들을 유일하게 구분할 수 있어야 합니다.
최소성 : 주식별자를 구성하는 속성의 수는 유일성을 만족하는 최소의 수가 되어야 합니다.
불변성 : 지정된 주식별자의 값은 자주 변하지 않아야 합니다.
존재성 : 주식별자가 지정이 되면 반드시 값이 들어와야 합니다.
분류
- 대표성 여부
주식별자 : 엔터티 내에서 각 어커런스를 구분할 수 있는 구분자로 다른 엔터티와 참조관계를 연결할 수 있습니다.
보조식별자 : 어커런스를 구분할 수 있는 구분자이나 대표성을 가지지 못해 참조관계를 연결할 수 없습니다.
- 스스로 생성 여부
내부식별자 : 스스로 생성되는 식별자 입니다.
외부식별자 : 타 엔터티로부터 받아오는 식별자입니다.
- 속성의 수
단일식별자 : 하나의 속성으로 구성되어 있습니다.
복합식별자 : 2개 이상의 속성으로 구성되어 있습니다.
- 대체 여부
본질식별자 : 업무에 의해 만들어지는 식별자입니다.
인조식별자 : 인위적으로 만든 식별자입니다.
주식별자 도출 기준
- 해당 업무에서 자주 이용되는 속성이어야 합니다.
- 명칭, 내역 등과 같이 이름으로 기술되는 것들은 안 됩니다.
- 복합으로 주식별자를 구성할 경우 너무 많은 속성이 있으면 안 됩니다.
식별자 관계
- 주식별자
자식의 주식별자로 부모의 주식별자를 상속합니다.
부모로부터 받은 식별자를 자식엔터티의 주식별자로 이용하는 경우 강한 연결관계를 표현합니다.( 실선 표기 )
- 비식별자
부모 속성을 자식의 일반 속성으로 사용합니다.
# 부모 없는 자식이 생성될 수 있는 경우
# 부모와 자식의 생명주기가 다른 경우
# 여러개의 엔터티가 하나의 엔터티로 통합되어 표현되었는데 각각 엔터티가 별도의 관계를 가진 경우
# 자식 엔터티에 별도의 주식별자를 생성하는 것이 더 유리한 경우
# SQL 문장이 길어져 복잡성이 증가되는 것을 방지한다.
약한 연결 관계를 표현하고 점선으로 표기합니다.
자식 주식별자구성을 독립적으로 구성합니다.
'자격증 > SQLD' 카테고리의 다른 글
[SQLD] : 분산 데이터 베이스 (0) | 2021.11.14 |
---|---|
[SQLD] : 성능 데이터 모델링 (0) | 2021.11.13 |
[SQLD] : 엔터티 (0) | 2021.11.06 |
[SQLD] : 데이터 모델링 이해 (0) | 2021.10.26 |
댓글