대표성으로 주식별자와 보조식별자, 구성으로 단일식별자와 복합식별자, 어디서 왔는지로 내부식별자와 외부식별자로 나뉜다.
왜 그런지까지
주식별자는 그 엔터티의 대표로 삼아 다른 엔터티가 참조하는 것이고, 보조식별자는 값이 유일하기는 하나 대표로 쓰지 않는 것이다. 속성 하나로 되면 단일식별자, 둘 이상을 묶어야 하면 복합식별자다.
자기 엔터티 안에서 만들어졌으면 내부식별자, 다른 엔터티에서 넘어왔으면 외부식별자(외래키)다. 세 가지는 서로 다른 축이라 겹쳐서 말할 수 있다 — 예를 들어 '복합 주식별자'는 흔하다.
세 가지 축
| 축 | 갈래 | 가르는 기준 |
|---|---|---|
| 대표성 | 주식별자 / 보조식별자 | 다른 엔터티가 참조하는가 |
| 구성 | 단일식별자 / 복합식별자 | 속성이 하나인가 여럿인가 |
| 생성 위치 | 내부식별자 / 외부식별자 | 제 엔터티에서 만들어졌는가 |
주식별자 vs 보조식별자
둘 다 값이 유일하다. 차이는 대표성 — 다른 엔터티가 참조하는 대표로 쓰면 주식별자, 그렇지 않으면 보조식별자다.
내부식별자 vs 외부식별자
내부식별자는 그 엔터티 안에서 만들어진 것이고, 외부식별자는 다른 엔터티의 식별자가 관계를 타고 넘어온 것(외래키)이다.
넣어 두면 오늘 · 1일 · 3일 · 7일 · 14일 · 30일 간격으로 다시 물어봅니다