관계
데이터베이스에 테이블은 하나만 있는 것이 아니다. 여러 개의 테이블이 있고 이러한 테이블은 서로의 관계가 정의되어 있다. 이러한 관계를 관계화살표로 나타낸다.
1:1 관계
예를 들어 유저당 유저 이메일은 한 개씩 있다고 가정하면 이 경우 1:1 관계가 된다.
1:1 관계는 테이블을 두 개의 테이블로 나눠 테이블의 구조를 더 이해하기 쉽게 만들어 준다.
1:N 관계
예를 들어 쇼핑물을 운영한다고 가정했을때, 한 유저당 여러 개의 상품을 장바구니에 넣을 수 있겠지? 이 경우 1:N 관계가 된다. 물론 하나도 넣지 않는 0개의 경우도 있으니 0도 포함되는 화살표를 통해 표현해야 한다.
이렇게 한 개체가 다른 많은 개체를 포함하는 관계를 말한다.
N:M 관계
학생과 강의의 관계를 정의하면 어떻게 될까? 학생도 강의를 많이 들을 수 있고 강의도 여러 명의 학생을 포함할 수 있다. 이 경우 N:M 이 된다.
중간에 학생_강의라는 테이블이 끼어 있는데, N:M 은 테이블 두 개를 직접적으로 연결해서 구축하지 않고 1:N, 1:M 이라는 관계를 갖는 테이블 두 개로 나눠서 설정한다.
'CS' 카테고리의 다른 글
[데이터베이스] 필드와 레코드 (0) | 2024.03.17 |
---|---|
[데이터베이스] 도메인 (0) | 2024.03.10 |
[데이터베이스] 속성 (0) | 2024.03.10 |
[데이터베이스] 릴레이션 (0) | 2024.03.10 |
[데이터베이스] 엔티티 (0) | 2024.03.10 |