[CS]데이터베이스 - ERD와 정규화 과정

junwoo·2022년 7월 16일
0

CS

목록 보기
6/6
post-custom-banner

4.2 ERD와 정규화 과정

ERD(Entity Relationship Diagram)은 DB 구축할 때 가장 기초적인 뼈대 역할을 하며, 릴레이션 간의 관계들을 정의

4.2.1 ERD의 중요성

시스템 요구 사항을 기반으로 작성하며 이 ERD를 기반으로 데이터베이스를 구축

4.2.2 예제로 배우는 ERD

4.2.3 정규화 과정

  1. 릴레이션 간의 잘못된 종속 관계로 인해 데이터베이스 이상 현상을 해결
  2. 저장 공간을 효율적으로 사용하기 위해 릴레이션을 여러 개로 분리하는 과정

장점

데이터베이스에서 이상 현상(삽입, 업데이트, 삭제 이상)을 없앨 수 있다
새로운 종류의 데이터를 추가할 때 테이블 구조 수정을 많이 하지 않아도 된다
데이터베이스 구조를 단순화해서 사용자가 더 쉽게 이해할 수 있다

제1정규형 (원자성)

릴레이션의 모든 도메인이 더 이상 분해될 수 없는 원자 값만으로 구성되어야 함

  • 모든 속성은 반드시 하나의 값만 가져야 한다.
  • 다중 값 or 반복 그룹 -> 제1정규형 위배
  • 원자값이 아닌 도메인을 분해

제2정규형 (부분 종속)

릴레이션이 제1 정규형이며 부분 함수의 종속성을 제거한 형태

  • 모든 속성은 반드시 모든 기본키에 종속되어야 한다. (기본키 일부에만 종속되어서는 안됨)

제3정규형 (이행 종속)

제2정규형이고 기본키가 아닌 모든 속성이 이행함수 종속성 제거

  • 기본키가 아닌 모든 속성간에는 서로 종속될 수 없다.

보이스/코드 정규형

결정자가 후보키가 아닌 함수 종속성 제거

profile
오늘보다 발전된 내일을 위한 기록
post-custom-banner

0개의 댓글