ERD 관계선의 종류
- 실선(Identifying) : A테이블과 B테이블은 "식별관계"이다.
-> 부모테이블[A 테이블]의 PK가 외래키로써, 자식테이블[B 테이블]의 PK에 포함되는 경우
-> 부모, 자식 관계 (부모가 있어야 자식이 생기는 경우)
(ex) User 테이블과 UserComment 테이블이 있을 경우, UserComment는 User가 반드시 있어야 존재할 수 있음
- 점선(Non-Identifying) : A테이블과 B테이블은 "비식별관계"이다.
-> 부모테이블[A 테이블]의 PK가 외래키로써, 자식테이블[B 테이블]의 PK가 아닌 일반 속성이 되는 경우
-> 부모, 자식 관계가 아닌 모든 경우 (부모가 없어도 자식이 생기는 경우)
(ex) User 테이블과 Task 테이블이 있을 경우, User가 담당 작업이 있다고 하더라도, Task는 User없이도 존재할 수 있음
※ 이해가 잘 안된다면, 모든 테이블의 PK를 Auto Increment 형식의 숫자로 지정하고, 모두 "비식별관계"로 표시해도 무방하다.
'[DBA] Database' 카테고리의 다른 글
[SQL] 조인에 대한 궁금증 (0) | 2020.11.19 |
---|---|
[SQL] 실행 우선 순서 (0) | 2020.11.19 |
uuid를 pk로 사용하면서, 성능을 최대한 유지하기 (0) | 2020.09.11 |
최근댓글