데이터베이스 정리 해설 1 정규화

정규화



데이터베이스에서 다루기 쉽도록 데이터 정리
일관성을 지키는 데이터베이스 설계

기본 키 후보 키



기본 키는 "관계형 데이터베이스 테이블에서 레코드를 고유하게 정의할 수 있는 항목"입니다. 기본 키는 NULL은 허용되지 않습니다.
후보키란, 주키의 후보가 되는 키. 테이블에서 레코드를 고유하게 정의하는 항목 조합입니다.

제1 정규형





표에 반복의 여유가 나오지 않도록 반복 부분을 열에 늘린다

제2 정규형



(조건) 모든 키 속성은 후보 키에 부분 함수 종속되지 않습니다.



부분 함수 종속되지 않은 것은



후보 키의 일부만으로 다른 항목이 고유하게 결정되는 경우
요점은
후보 키의 일부로 항목이 정해지는데, 다른 필요가 없는 후보 키를 넣지 않은 것.


후보 키를 첫 번째 정규형에서 찾습니다.
{ 영수증 번호, ​​상품 코드 }
가 후보 키

{영수증 번호, ​​상품 코드} → {수량, 소계}
{상품 코드} → {상품명, 단가}
{ 영수증 번호 } → { 점포 ID , 점포 이름 , 주소 , 합계 , 소비세 , 청구액 , 일시 , 담당자 코드 , 담당자 이름 }



제3정규형



(조건) 비 키 속성은 후보 키에 전이 함수 종속되지 않습니다.



전이 함수 종속이란 비 키 또는 후보 키 + 비 키에 의해 비 키 항목이 고유하게 결정된다
제 2 정규화시의 테이블을 예로 하면, 비키 속성의 {점포 ID}가 정해지면 {점포명, 주소}가 일의에 정해진다. ← 전이적 함수 종속되어 있다.

일반적으로는 제 2 정규형으로부터 도출 항목(계산에 의해 구해지는 항목)을 제외한다.
이번에는 {소계, 합계, 소비세, 청구액}

전이 함수 종속성을 제거하여 완성



보충




슈퍼 키도 중요한 포인트
세 번째 정규형은 슈퍼 키를 만드는 것이 포인트

참고로 한 사이트



제 1 정규화 · 제 2 정규화 · 제 3 정규화의 차이

데이터베이스의 정규형에 대해 생각

후보 키에서 세 번째 정규화까지 마스터

좋은 웹페이지 즐겨찾기