- 관계가 2NF이고 전이적 부분 종속성을 포함하지 않는 경우 관계는 3NF가 됩니다.
- 3NF는 데이터 중복을 줄이기 위해 사용됩니다. 또한 데이터 무결성을 달성하는 데 사용됩니다.
- 프라임이 아닌 속성에 대한 전이적 종속성이 없는 경우 관계는 제3정규형이어야 합니다.
모든 중요 함수 종속성 X → Y에 대해 다음 조건 중 하나 이상을 보유하는 경우 관계는 제3정규형입니다.
- X는 슈퍼 키입니다.
- Y는 주요 속성입니다. 즉, Y의 각 요소는 일부 후보 키의 일부입니다.
예:
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 | 국회의원 | 보팔 |