Skip to Content
Suffering builds character

4.관계

1. 관계의 구분

각 테이블 간의 관계는 대표적으로 세 가지로 구분될 수 있음

1-1. 일대일, 1:1관계, One-to-One RelationShip

각 개체(Entity)의 인스턴스(Record)가 다른 개체의 인스턴스와 1:1 관계를 가진 형태

ex)
국가와 수도
어떤 한 사람과 그 사람이 가진 지문 정보
사용자 계정과 이메일 주소
부부(남편과 아내)

one-to-one

선택적(Optional) 관계
국가가 건국된지 얼마 되지 않았다면 수도가 없을 수도 있음(O로 표기)

‘국가는 수도를 1개 가지고 있거나 없을 수 있음’을 관계로 표시 one-to-one2

1-2. 일(一)대다(多) 관계, 1:N 관계, One-to-Many Relationship

한 개체(1)의 인스턴스가 다른 개체의 인스턴스 여러 개(N)와 관계를 가지는 형태

ex)
학생과 학과, 사원과 부서
하나의 학과(1)는 여러 명의 학생(N)을 가질 수 있음
한 명의 학생은 하나의 학과에 속해있음

한 명의 고객은 여러 개의 계좌를 가질 수 있음

one-to-many → 두 번째 그림 표기는 한 명의 고객은 계좌가 하나도 없거나 1개 이상을 가질 수 있다는 표기

1-3. 다대다 관계, N:M 관계, Many-to-Many Relationship

한 개체의 인스턴스가 다른 개체의 여러 인스턴스와 관계를 가질 수 있고, 그 반대도 성립함

ex) 회원과 상품
한 명의 회원은 여러 개의 상품을 주문할 수 있고,
하나의 상품도 해당 상품을 주문한 여러 명의 회원을 가질 수 있음

별도의 테이블인 Order로 분리 many-to-many

Last updated on