day14

Antipiebse·2022년 3월 31일
0

TIL

목록 보기
11/17

백엔드 개발자가 갖춰야할 능력

  • 프로그래밍 능력(API 설계)
  • 네트워크 관련 지식 보유(다양한 컴퓨터와 연결해야함-Cloud)
  • DB설계능력(어떠한 DB가 프로젝트에 어울리는 지)

정규화(Normalization)?

중복 데이터를 분리하는 것

상품번호,상품명과 주문번호 상품번호 상품수량으로 나누어 분해했다.

정규형(Normal Foam)종류

1NF, 2NF, 3NF, BCNF 등 많은 종류가 있다.

실무에서는 1NF, 2NF, 3NF를 주로 사용한다.

1NF?


중복데이터가 발생
주문번호도 같고 날짜도 같고 이름도 같다.


표를 두 개 만들어서 해결!

2NF?

1NF에서 속성이 비슷한 것끼리 묶기

3NF?

중복된 데이터를 처리하고 다 나누고 합친다

차이점...?

1NF가 복합키라면 2NF이고 그게 아니라면 3NF이다,

엑셀 상품데이터 실습


3NF로 구현함.

ERD(Entity-Relation-Diagram)

표들의 관계 표현

ERD클라우드로 깔끔하게 구현가능!

1대1 매칭 둘 중에 하나가 생기면 다른 하나도 생겨야함

다대일 매칭

다대다 매칭

다대다 구조를 정규화 하게 되면 중간 테이블이란 것이 생긴다.

FK(외래키, 참조키, foreign key)

어떠한 테이블에 참조되어 있음!

스타벅스 데이터로 정규화(등록전용 테이블 만들기)

DB에 저장되는 이미지는 이미지의 주소로 저장이 된다.
https://image.istarbucks.co.kr/upload/store/skuimg/2021/04/[9200000002487]_20210426091745609.jpg

문자열 종류
CHAR, CHAR(4)4자리 글자(속도 빠름)
VARCHAR, VARCHAR(10) 10자리만 안 넘으면 됨.(상대적으로 느림)
TEXT

숫자열 종류
INTGER
DECIMAL(소수점)
ex)DECIMAL(4,1) => 345.6

불린타입(TINYINT)
TRUE => 1
FALSE => 0

어떤 게 들어가야하냐면?
1대1 관계 1개
1대다 관계 1개
다대다 관계 1개씩 최소한 포함

profile
백엔드 주니어 개발자

0개의 댓글