▶ 단계별 정규화 과정

• 1차 정규화

: 반복그룹 속성을 추출한다. (도메인이 원자값)
 - 자식 개체가 추출되고 반드시 식별관계이다.
 - 주식별자를 가지고 나간다.
 - 자식 개체 주 식별자에 반드시 속성이 추가된다.


• 2차 정규화

: 주 식별자에 완전 기능 종속되지 않는 속성을 추출한다.
 - 자식 개체 주 식별자에 외부 식별자를 두고 나간다.
 - 부모개체가 추출되고 반드시 식별관계이다.

 

*함수적 종속

: 레코드 내에 존재하는 항목들 중에 속성 B가 속성 A에 함수적 종속관계에 있다는 것은 A를 이용 B를 식별할 수 있다는 의미

- A → B
-  A : 결정인자 (Determinant)


- A → (B,C)인 경우 A → B, A → C가 성립한다.
- (A,B) → C 인 경우 A → C, B → C는 성립하지 않는다.
- A → B , B → C인 경우 A → C가 성립될 수 있다.
   (3차 정규화 대상이 아니다.)

 

• 함수적 종속의 예
- 제품번호 → 제품명
- 학번 → (이름,학과,주소,전화번호)
- (학번,과목번호) → 점수


• 3차 정규화

: 주 식별자에 이행 종속인 속성을 추출한다.
 - 일반 속성에 외부 식별자를 두고 나간다.
 - 부모개체가 추출되고 반드시 비 식별 관계이다.

 

예시

• 비정규화

비정규화

• 1차 정규화

자식 개체가 추출되고 반드시 식별관계

주식별자를 가지고 나간다.

자식 개체 주식별자에 속성 추가

반복속성 그룹 추출한다.

주문번호만 fk이면 주문번호가 중복이 안되므로 데이터 입력이 여러개가 안된다. 
따라서 제품번호를 pk로 추가한다.

 

주문금액은 주문수량*주문단가이므로 없어도 된다.

그렇지만 서식에 있는 컬럼이므로 있는게 좋다.

 

• 2차 정규화

주식별자에 완전 종속되지 않는 것을 추출

자식 개체 주식별자에 외부식별자를 두고 나간다.

부모 개체가 추출되고 반드시 식별관계

제품 번호가 제품명을 가리킨다.

주식별자에 완전 종속되지 않는 것을 추출한다.

 

• 3차 정규화

이행 종속 속성 추출

일반속성에 외부 식별자를 두고 나간다.

부모개체 추출, 반드시 비식별관계

이행 종속 속성을 추출한다.

고객 번호는 고객명, 고객주소, 사업자번호, 수출상태를 가리킨다.

이것은 이행 종속이므로 추출한다.

 

• 관계 검증

정규화를 끝내고 마지막에 한번 더 관계를 확인한다.

위를 예시로 들면 고객 테이블에 10번이라는 고객 번호가 있다고 생각하고 주문장에 고객번호가 있어야하는지 판단한다.

- 식별관계에서는 O가 없는 경우가 있음

- 비식별관계에서는 O가 거의 반드시 있음

'모델링 공부 기록' 카테고리의 다른 글

판매 전표 모델링  (0) 2021.12.29
인사기록 모델링  (0) 2021.12.29
영수증 모델링  (0) 2021.12.24
ERwin 기본 설정  (0) 2021.12.19
모델링 1 - 데이터베이스 모델링  (0) 2021.12.19

+ Recent posts