4.1정규형
1정규형(1st-normal-form)이란 다음과 같은 원자성(Atomicity)을 준수한 정규형을 의미함
모든 속성은 하나의 값만을 가져야 한다
1. 1정규형에서 지켜야할 몇 가지 원칙
1정규형을 만족하려면 다음의 특징을 지켜야함
1-1. 하나의 속성은 하나의 단일 값(원자값)을 가져야함
ex) 전화번호 컬럼에 집, 휴대폰, 회사 전화 번호를 한 번에 보관하면 안됨
#회원ID | 이름 | 전화번호 |
|---|---|---|
| vvabc | 안으뜸 | 02-523-5555, 010-5555-4444 |
1-2. 하나의 릴레이션에서 반복 형태의 속성이 존재하면 안됨
ex) 상품 관련 데이터를 별도의 릴레이션으로 분리 필요
| #주문ID | 회원ID | 주문일자 | 전화번호 | 상품ID | 수량 | 상품ID | 수량 | 상품ID | 수량 |
|---|---|---|---|---|---|---|---|---|---|
| 20354312 | vqasw | 2035-05-02 | 02-523-5555 | A01 | 5 | B01 | 2 | A02 | 3 |
이렇게 되면 상품의 개수가 지속적으로 증가할 경우, 컬럼도 그에 맞게 추가되어야함
주문할 수 있는 상품의 개수가 최대 3개이면 이 구조가 더 이상적일 수 있으나,
현실적으로 그럴 확률이 낮고, 추후 확장성을 고려하는 것이 더 좋음
↓ 분리 결과
하나의 주문(1)은 두 가지 이상의 상품을 주문할 수 있다는 요구사항일 때,
주문 테이블
#주문ID | 회원ID | 주문일자 |
|---|---|---|
| 20354312 | vqasw | 2035-05-02 |
주문상품 테이블
#주문ID | #상품ID | 수량 |
|---|---|---|
| 20354312 | A01 | 5 |
| 20354312 | B01 | 2 |
| 20354312 | A02 | 3 |
Last updated on