SQL 도전기 - 35

김치전사·2022년 7월 29일
0

SQL 도전기

목록 보기
35/36

오늘은 정규화에 대해 공부한다

테이블을 올바른 형태로 변경하고 분할하는 것을 정규화라고 한다
정규화는 데이터베이스 설계 단계에서 행해진다
올바른 형태는 주관적 기준이라 할 수 있다

제1정규형

관계형 데이터베이스 테이블에는 하나의 셀에 하나의 값만 저장할 수 있다는 제약이 있다
이로 인해 주문상품의 데이터를 그대로 테이블로 만들 수는 없고 상품코드와 상품명, 개수 데이터를 담는 세 개의 열로 나누어야 한다
하나의 셀에 하나의 값만 저장할 수 있도록 하고, 반복되는 부분을 세로(행) 방향으로 늘려나가는 것이 제1정규화의 제1단계이다

반복되는 데이터를 가로(열방향)가 아닌 세로(행방향)로 늘리는 것이 제 1정규화의 제1단계이다!

제1정규화에서는 중복을 제거하는 테이블의 분할도 이루어진다
제1정규화에서는 반복되는 부분을 찾아내서 테이블을 분할하고 기본키가 될 열을 작성할 수 있다!

제1정규화에서는 테이블의 분할과 기본키 지정이 이루어진다

제2정규형

제2정규화에서는 데이터가 중복하는 부분을 찾아내어 테이블로 분할해 나간다
부분 함수종속성을 찾아내서 테이블을 분할하는 것이 제2정규화이다
함수종속성이란 키 값을 이용해 데이터를 특정지을 수 있는 것을 가리킨다

제3정규형

이 또한 중복하는 부분을 찾아내어 테이블을 분할하는 수법이다
제3정규화에서는 기본키 이외의 부분에서 중복이 없는지를 조사한다

정규화로 데이터 구조를 개선하는 것은 하나의 데이터가 한 곳에 저장되도록 하기 위함이다!

profile
개인공부 블로그입니다. 상업적 용도 X

0개의 댓글