출처 : https://www.youtube.com/watch?v=Y1FbowQRcmI
코딩애플님



위처럼 우리가 데이터를 추가 하면 찾을때 귀찮고 복잡해짐 수정도 마찬가지로 어려워질 수 있다.
제 1 정규화 : 한칸엔 하나의 데이터만 그래서
하나에 한 데이터만 함으로써 문제없게 함
제 2 정규형 :
가격 수정 할때 하나씩 찾아서 바꾸면된다.
근데 그게 백명 천명 이러면 수정하기 빡세진다.
비효율성 up


이때 제2 정규화
즉 제2 정규화는 현재 테이블의 주제와 관련없는 컬럼을 다른 테이블로 빼는 작업

그래서 아래처럼 가격 테이블 따로 뺌


이렇게 하면 가격한곳만 건드려서 되서 쉽게수정
근데 단점 있다.
테이블 1개에서 볼 수업고 다른테이블에서 조회해야하는 수고로움이있다.
제2정규형의 정확한 정의:
partial dependency를 제거한 테이블
partial dependency??
우선 composite primary key = (primary key = 행을 구분하기 위한 유니크한 키)


그럼 partial dependency는 ??


현재 테이블의 핵심주제와 상관없는 컬럼을 다제거
제 3 정규형 :

일단 위 표는 제 2 정규형 composite primary key 없음 프라이머리 키역할을 하는 거 하나만 있을 뿐

이 때 출신대학은 강사에만 종속되는 pk와 관련없는 컬럼


이상구가 만약 학벌세탁해 그럼 변경하려면

제2정규화 일때 이상구 많으면 힘듦

제3정규화시 딱 한 곳만 수정
단점 : 학교 뽑고 싶으면 바로 못뽑고 다른 테이블 가야함