코드스테이츠 32일차 - 3 [ Schema & Query Design ]

Lumi·2021년 10월 19일
0
post-thumbnail

데이터 간의 관계를 지정하고 합리적이고 효율적인 방법으로 구성하는 방법을 배운다.

  • 그냥 데이터 테이블 간에 관계를 짓는 법을 배운다.

스키마 : 데이터베이스에서 데이터간 구성되는 연간관계를 뜻한다.

  • 청사진과 동일하다.

데이터베이스 설계

1:1관계

하나의 레코드가 다른 테이블의 레코드 한개와 연결된 경우

만약 user, phonebook이라는 테이블이 있다고 하자

이중 phone_id는 외래키(foreign key)로써 다른 테이블과 연결 되어 있다

이러한 1:1관계에서는 단어 그대로 하나의 데이터에 하나의 값만이 매칭 될수가 있다.

  • 1:1 관계는 자주 사용하지 않는다. 1:1관계를 사용하는 대신에는 주로 user테이블에 phone_number를 추가하는 방법을 주로 사용한다.

1:N단계

하나의 테이블에 여러개의 값이 매칭때를 말한다.

이러한 구조에서는 한명의 유저가 여러개의 전화기를 가지는 경우를 말한다.

  • 이러한 관계를 데이터베이스에서 가장 많이 사용한다.

N:N 관계

N:N관계를 가지는 테이블은 대게 join테이블을 만들어 관리를 한다.

이러한 테이블에서는 고객한명이 여러개의 패키지, 패키지 하나가 여러개의 고객에게 할당 될수 있기 때문에 N:N관계를 이루고 있다고 할수가 있다.


이러한 관계를 표현하는 join테이브이다.

각각 foreign key를 추가함으로써 연관관계를 이어 준다.

  • cp_id는 기본키 = primary key이다.
profile
[기술 블로그가 아닌 하루하루 기록용 블로그]

0개의 댓글