logo

제3정규형(3NF)

  • 관계가 2NF이고 전이적 부분 종속성을 포함하지 않는 경우 관계는 3NF가 됩니다.
  • 3NF는 데이터 중복을 줄이기 위해 사용됩니다. 또한 데이터 무결성을 달성하는 데 사용됩니다.
  • 프라임이 아닌 속성에 대한 전이적 종속성이 없는 경우 관계는 제3정규형이어야 합니다.

모든 중요 함수 종속성 X → Y에 대해 다음 조건 중 하나 이상을 보유하는 경우 관계는 제3정규형입니다.

  1. X는 슈퍼 키입니다.
  2. Y는 주요 속성입니다. 즉, Y의 각 요소는 일부 후보 키의 일부입니다.
  3. 예:

    C의 정적

    EMPLOYEE_DETAIL 테이블:

    EMP_ID EMP_NAME EMP_ZIP EMP_STATE EMP_CITY
    222 괴롭히다 201010 위로 노이다
    333 스테판 02228 우리를 보스턴
    444 그리고 60007 우리를 시카고
    555 캐서린 06389 영국 노리치
    666 남자 462007 국회의원 보팔

    위 표의 슈퍼 키:

     {EMP_ID}, {EMP_ID, EMP_NAME}, {EMP_ID, EMP_NAME, EMP_ZIP}....so on 

    후보 키: {EMP_ID}

    비프라임 속성: 주어진 테이블에서 EMP_ID를 제외한 모든 속성은 프라임이 아닙니다.

    여기서는 EMP_ZIP에 종속된 EMP_STATE 및 EMP_CITY와 EMP_ID에 종속된 EMP_ZIP입니다. 비프라임 속성(EMP_STATE, EMP_CITY)은 슈퍼 키(EMP_ID)에 전이적으로 종속됩니다. 이는 제3정규형의 법칙을 위반합니다.

    그렇기 때문에 EMP_ZIP을 기본 키로 사용하여 EMP_CITY 및 EMP_STATE를 새 테이블로 이동해야 합니다.

    리눅스 오류 코드

    직원 테이블:

    EMP_ID EMP_NAME EMP_ZIP
    222 괴롭히다 201010
    333 스테판 02228
    444 그리고 60007
    555 캐서린 06389
    666 남자 462007

    EMPLOYEE_ZIP 테이블:

    EMP_ZIP EMP_STATE EMP_CITY
    201010 위로 노이다
    02228 우리를 보스턴
    60007 우리를 시카고
    06389 영국 노리치
    462007 국회의원 보팔