(개체 관계도 : 테이블 구조)
사각형 : 릴레이션
원 : 속성(컬럼),
밑줄원 : 기본키
- : 연결
마름모 : 관계

EMP 1개와 DEPT 1개가 매핑 되어있다
EMP 는 DEPT와 1개, DEPT는 EMP 와 N개 연결되어있다 EMP N 1 DEPT
까마귀발 어쩌구~
=> ER다이어그램 해석 방법 정리하기




: 테이블이 잘못 설계되어 데이터 삽입, 삭제, 갱신 시 문제가 발생하는 현상
📌 이상 현상은 데이터 중복, 즉 너무 큰 테이블에서 발생함.
| 전화번호 | 이름 | 주소 | 수강과목 | 수강료 |
|---|---|---|---|---|
| 010 | 김 | 목동 | 파이썬 | 300,000 |
| 011 | 이 | 가산 | 파이썬 | 300,000 |
| 011 | 이 | 가산 | DB | 250,000 |
| 012 | 박 | 안양 | 자바 | 200,000 |
A → B주민등록번호 → 이름완전 함수적 종속: 기본키가 여러개의 속성으로 구성될 때 기본키 전체를 알아야 하나의 값을 결정할 수 있는 경우
부분 함수적 종속: 기본키가 여러 개의 속성으로 구성될 때 기본키의 일부분만으로 하나의 값을 결정할 수 있는 경우 (❌ → 제거 필요: 제2정규형)
이행적 함수적 종속: 하나의 속성이 다른 하나의 속성의 값을 결정하고 결정되는 속성이 또 다른 속성의 값을 결정하는 경우
A → B, B → C 일 때⇒ A → C (❌ → 제거 필요: 제3정규형)
: 데이터 중복 최소화, 구조 안정성 확보를 위한 테이블 분해 과정
| 정규형 | 내용 |
|---|---|
| 제1정규형 | 모든 속성 값은 원자값 (Atomic)이어야 함 |
| 제2정규형 | 1NF + 부분 함수적 종속 제거 |
| 제3정규형 | 2NF + 이행적 함수적 종속 제거 |
| BCNF | 3NF + 모든 결정자는 후보키 |
| 제4정규형 | BCNF + 다치 종속 제거 |
| 제5정규형 | 4NF + 조인 종속 제거 |
: 정규화된 테이블을 조인 비용 줄이기 위해 중복, 통합, 분리 등을 수행해 재구성
목적: 성능 향상, 개발/운영 단순화
테이블 추가
테이블 병합
테이블 분할 (파티셔닝)