RDB의 관계
RDB는 Relation DataBase로 관계형 데이터베이스를 말한다. 이 관계형 데이터베이스를 표현할 때 하나의 테이블로 표현을 하곤 하는데, 2개 이상의 데이터베이스(테이블)의 관계를 표현할 때 1:1, 1:N, N:M 이라고 표현한다. 각각 어떤 것을 의미하는지 예시와 함께 살펴보자!
1:1 관계
RDB에서 각 테이블의 요소가 서로만을 바라보고 있는 관계를 말한다.
예를 들면, 신랑 - 신부의 관계가 있다. 서로 하나만을 객체로 가진다.
1:N 관계

RDB에서 하나의 entity(table)이 관계를 맺고 있는 entity의 여러 객체를 가질 수 있는 구조를 말한다. 쉽게 말해서, 한 테이블의 각 객체들이 다른 테이블의 여러 객체를 가지는 경우를 말한다. 그리고 여기서 1에 속하는 테이블의 **기본 키(Primary Key)**는 N에 속한 테이블의 외래 키(Foreign Key)가 된다.
예를 들면, 고객 - 주문 관계가 있다. 한 고객이 여러 제품을 주문한다.
N:M 관계

RDB에서 양쪽 entity 모두가 서로에게 1:N 관계를 가지는 구조를 말한다. 쉽게 말해서, 이쪽에서도 각 객체가 상대방의 여러 객체를 가지고, 저쪽에서도 상대방의 여러 객체를 가지는 경우를 말한다. N:M 관계에서는 mapping table이 양쪽 테이블을 이어준다.
'CS > 데이터베이스' 카테고리의 다른 글
| [CS - 데이터베이스] DB의 Index (0) | 2023.02.13 |
|---|---|
| [CS - 데이터베이스] Transaction과 Deadlock (0) | 2023.01.28 |
| [CS - 데이터베이스] RDB와 NoSQL (2) | 2023.01.26 |
| [CS - 데이터베이스] RDB의 테이블 결합 (left outer join, inner join) (0) | 2023.01.26 |
| [CS - 데이터베이스] 데이터베이스 테이블 용어 정리 (0) | 2023.01.25 |