CODEDRAGON ㆍDevelopment/Database
단계별 정규형과 제약 조건
· 각 단계별로 정규형이 만족해야 하는 제약조건과 정규화 방법에 차이가 있습니다.
· 4, 5정규형은 너무 복잡한 종속성을 고려해야 하고 릴레이션 수도 과도하게 많아질 수 있습니다. 또 일반적으로 보이스/코드 정규형까지만 고려하므로, 4, 5 정규형을 제외한 나머지 정규형에 대해 자세히 알아보겠습니다.
정규형 단계 |
제약 조건 |
정규화 방법 |
제 1 정규형(1NF) |
모든 속성의 도메인이 원자 값이어야 합니다. |
· 다중치 속성 및 중복 속성을 분리 (다중치와 반복 그룹 제거) · 나눌 수 있는 만큼 쪼갭니다. |
제 2 정규형 (2NF) |
모든 속성이 기본 키에 완전 함수적 종속이어야 합니다. |
· 기본 키에 부분 함수적 종속인 속성을 분리 (부분 함수적 종속 제거) · 테이블의 컬럼들이 기본키와 직접 연관되는 컬럼만으로 구성합니다. |
제 3 정규형 (3NF) |
속성들 간에 이행적 함수적 종속이 없어야 합니다. |
· 이행적 함수적 종속인 속성을 분리 (이행적 함수적 종속 제거) · 컬럼들 간의 종속관계가 있으면 안됩니다. |
보이스/코드 정규형 (BCNF) |
후보 키가 아닌 결정자가 없어야 합니다. |
· 후보 키가 아니면서 결정자 역할을 하는 속성과 그 종속자를 분리 · (모든 결정자가 후보 키) |
제 4 정규형 (4NF) |
다치 종속(Multi-valued Dependency) 속성이 없어야 합니다. |
· 다치 종속인 속성을 분리 |
제 5 정규형 (5NF) |
조인 종속(Join Dependency) 속성이 없어야 합니다. |
· 조인 종속인 속성을 분리 |
'Development > Database' 카테고리의 다른 글
CREATE TABLE - CREATE TABLE 형식, 서브쿼리를 통한 테이블 생성, 가상컬럼 테이블 생성 (0) | 2019.12.17 |
---|---|
오라클 설치파일 다운로드(download) (0) | 2019.12.12 |
NoSQL 분류 (0) | 2019.12.03 |
Summary - 무결성 제약 조건의 특성, QUERY 연습 (0) | 2019.11.28 |
DB & DBMS (0) | 2019.11.28 |