본문 바로가기
IT개발/Tech Notes

정규화란? 제1정규형부터 제3정규형까지 쉽게 정리

by 시간기억자 2025. 5. 1.
반응형

**정규화(Normalization)**란 데이터베이스에서 중복을 제거하고 논리적으로 데이터를 정리하는 과정이다.
정규화는 관계형 데이터베이스 설계의 기본이며, 실무와 정보처리기사 시험 모두에서 필수 개념이다.


✅ 정규화가 필요한 이유

  • 데이터 중복을 방지
  • 데이터 무결성을 유지
  • 테이블 구조를 단순화
  • 변경 이상(삽입, 삭제, 갱신 이상) 방지

✅ 제1정규형 (1NF)

  • 정의: 모든 속성의 값이 **원자값(Atomic value)**이어야 한다.
  • 예시:
    잘못된 형태: 취미 = 독서, 여행
    올바른 형태: 취미 = 독서, 취미 = 여행
  • 핵심: 하나의 컬럼에 하나의 값만 존재해야 한다.

✅ 제2정규형 (2NF)

  • 정의: 부분 함수 종속 제거
  • 조건: 1NF를 만족하면서, 기본키가 복합키인 경우, 기본키의 일부에만 종속된 속성은 분리해야 한다.
  • 예시:
    테이블: (학생ID, 과목) → 교수
    교수는 과목에만 종속되므로, 별도 테이블로 분리해야 한다.
  • 핵심: 기본키 전체에 종속되지 않은 속성 제거

✅ 제3정규형 (3NF)

  • 정의: 이행 함수 종속 제거
  • 조건: 2NF를 만족하면서, 기본키가 아닌 다른 속성에 종속된 속성이 없어야 한다.
  • 예시:
    테이블: 학번 → 학과코드 → 학과이름
    학과이름은 학과코드를 통해 결정되므로, 별도 테이블로 분리해야 한다.
  • 핵심: 기본키가 아닌 속성을 통해 또 다른 속성이 결정되면 안 된다.

✅ 정규형 요약표

정규형 조건 목적
1NF 속성 값이 원자값 컬럼 값 정제
2NF 부분 함수 종속 제거 기본키 종속성 명확히 분리
3NF 이행 함수 종속 제거 중복 제거 및 논리적 분리
 

✅ 결론

정규화는 단순한 암기 대상이 아니라, 데이터베이스 설계의 원칙이다.
정규화를 이해하면, 데이터 중복을 줄이고 유지보수를 쉽게 할 수 있다.
정보처리기사 시험뿐 아니라 실무 DB 설계에서도 매우 중요하게 작용한다.


📌 매일 간단히 IT 관련 개념을 익히고 싶다면 구독하세요!👇👇👇

http://www.youtube.com/@itbite_daily

 

오늘의 IT한입

👋 하루 한 입, 쉽게 배우는 IT & 개발 개념! 프로그래밍, 데이터베이스, 운영체제, 네트워크, 보안, 코딩테스트까지! 취업 준비부터 실무 감각까지 매일 짧고 강력하게 정리해드립니다. 📍 매일

www.youtube.com

 

반응형

댓글