옛날 개발자들이 수많은 DB 설계 케이스를 접하다보니 엔티티 간의 관계에서 패턴을 찾은 것이다. 그게 바로 1:1 관계, 1:N 관계, N:M 관계라는 패턴이다. 이 개념을 알게 되면 DB 설계 할 때 조금 더 수월하게 할 수 있다. 그럼 지금부터 1:1 관계, 1:N 관계, N:M 관계에 대해 알아보자.
✅ 엔티티 관계 파악 방법
엔티티 간에 어울리는 동사 찾기
A(주어)가 B를 _____. (A가 주어)
B(주어)가 A에 의해 ______. (B가 주어)
** 서비스의 관점에서 동사를 떠올려야 한다.
1번 과정에서 찾은 동사를 활용해 적절한 단어(하나의 or 여러 개의) 찾기
하나의 A는 (하나의 or 여러 개의) B를 _______. (A의 관점)
하나의 B는 (하나의 or 여러 개의) A에 의해 _______. (B의 관점)
** 문장 처음에 시작하는 하나의라는 말을 반드시 붙여야 헷갈리지 않는다.
** 서비스를 어떻게 기획하냐에 따라 달라질 수 있다. 반드시 자신의 서비스에 대입해서 생각해야 한다.
관계 판단하기
A, B의 관점 전부 다 하나만 기진다면 → A : B = 1 : 1
A의 관점에서는 여러개의 B를 가지고, B의 관점에서는 하나의 A를 가진다면 → A : B = 1 : N
A의 관점에서는 하나의 B를 가지고, B의 관점에서는 여러개의 A를 가진다면 → A : B = N : 1