1-2-1. 정규화

한칙촉·2025년 11월 6일

SQLD 요약 정리

목록 보기
6/30

정규화

정규화

  • 데이터베이스의 이상현상을 방지하기 위하여, 데이터 중복을 최소화하여 테이블을 분리하는 방법
  • 엔터티 = 테이블 = 릴레이션

이상현상

  • 삽입이상 : 데이터 삽입 시, 의도하지 않은 값들도 삽입되는 현상
  • 삭제이상 : 데이터 삭제 시, 의도하지 않은 값들도 삭제되는 현상
  • 갱신이상 : 일부 데이터만 갱신되어 모순이 발생하는 현상

함수적 종속

  • A 속성에 의해 B가 유일하게 결정됨 (A -> B)
  • 이 때 A를 결정자, B를 종속자라고 함
  • 완전 함수적 종속 : 종속자가 기본키의 모든 속성에 종속적인 경우
  • 부분 함수적 종속 : 종속자가 기본키의 일부 속성에 종속적인 경우

정규화 단계

  1. 제1정규화 : 도메인이 원자 값만으로 구성
  2. 제2정규화 : 부분적 함수 종속을 제거하여, 완전 함수 종속을 만족
  3. 제3정규화 : 이행 함수 종속 관계를 제거
  4. BCNF : 결정자가 모두 후보키가 되도록 분해
  5. 제4정규화 : 다치 종속의 제거
  6. 제5정규화 : 조인 종속성을 이용
  • 테이블 분해 시, 결정자는 남기고 종속자만 제거
profile
빙글빙글돌아가는..

0개의 댓글