RDBMS의 정규화

민태영·2023년 8월 18일
post-thumbnail

정규화의 목적

  1. 테이블간의 중복된 데이터를 허용하지 않음

  2. 데이터의 무결성을 유지

  3. DB의 저장용량을 줄임

테이블의 정규화는 각 단계가 있으며 어떻게 분해되는 지에 따라 정규과 단계가 달라진다.

정규화 단계

제1 정규화

  • 테이블의 컬럼이 하나의값(원자값)을 갖도록 테이블을 분해

제2 정규화

  • 제 2 정규형은 제 1 정규형을 만족하면서 의존성이 논리적으로 옳은 것
    1). 제 1 정규형에 속한다.
    2). 기본키가 아닌 속성이 기본키에 완전 함수 종속된다.

제 3 정규화

  • 제 3 정규형는 다음의 두 조건을 모두 갖추어야함
  • 제 2 정규화를 진행한 테이블에 대해 이행적 종속이 없도록 테이블을 분해하는거

이행적 종속이란:
a -> b, b -> c가 성립될 때 a -> c가 성립되는것 을 의미

  • 한 컬럼의 데이터를 수정함으로 인해 다른 컬럼까지 같이 수정을 하게 되는 번거로움을 해결하기 위해 제 3 정규화를 진행한다.
profile
꿈을 꾸는 개발자

0개의 댓글