안녕하세요 길벗수험서 운영팀입니다.
<납품> 테이블을 보면 모든 필드명에 밑줄을 그음으로써 3개의 모든 필드가 복합키임을 알 수 있습니다.
제 2정규화를 하기 위해서는 기본키가 아닌 필드(속성)가 기본키에 대해서 완전 함수적 종속을 만들어야 하는 것입니다. 때문에 해당 문제에서는 기본키가 아닌 필드가 존재하지 않으므로 2정규형은 나올 수 없습니다.
또한 릴레이션의 복합 속성(납품처, 담당사원)에 대응하는 제품명 속성은 납품처에만 종속됩니다.
[납품처] / [담당사원] / [제품명]
대명금속 / 김봉연 / 베어링
대명금속 / 김봉연 / 나사
대명금속 / 김정영 / 베어링
대명금속 / 김정영 / 나사
위 필드들을 보면, [제품명] 베어링과 나사는 김봉연, 김정영으로 나눠지는 [담당사원] 필드가 아닌 [납품처] 대명금속에 종속됩니다. 즉 [제품명] 필드의 집합이 [납품처] 필드의 하나의 값에 종속되는 형태죠.
이를 다치종속이라고 하며 [납품처] →→ [제품명] 으로 봅니다.
이와 마찬가지로 복합 속성(납품처, 제품명)에 대응하는 담당사원 속성은 동일하게 납품처에만 종속됩니다.
[담당사원] 필드의 집합(김봉연, 김정영)은 [제품명]이 아닌 [납품처] 필드의 하나의 값(대명금속)에 종속되기 때문이죠. [납품처] →→ [담당사원]이 됩니다.
함수적 종속관계는 회원님이 설명하신 것이 맞습니다.
다만 다치 종속과 함수적 종속관계가 다르다는 것을 염두해 두세요.
또한 4정규화의 문제는 거의 동일합니다. (예제가 여러개 나올 수가 없는 구조)
모든 필드가 기본키로 구성되어 있어야 하죠. (실제 실무에서 4정규화까지 가는 경우는 없습니다.)
행복한 하루 되세요 :)
-
관리자2019-02-21 13:55:04
안녕하세요 길벗수험서 운영팀입니다.
<납품> 테이블을 보면 모든 필드명에 밑줄을 그음으로써 3개의 모든 필드가 복합키임을 알 수 있습니다.
제 2정규화를 하기 위해서는 기본키가 아닌 필드(속성)가 기본키에 대해서 완전 함수적 종속을 만들어야 하는 것입니다. 때문에 해당 문제에서는 기본키가 아닌 필드가 존재하지 않으므로 2정규형은 나올 수 없습니다.
또한 릴레이션의 복합 속성(납품처, 담당사원)에 대응하는 제품명 속성은 납품처에만 종속됩니다.
[납품처] / [담당사원] / [제품명]
대명금속 / 김봉연 / 베어링
대명금속 / 김봉연 / 나사
대명금속 / 김정영 / 베어링
대명금속 / 김정영 / 나사
위 필드들을 보면, [제품명] 베어링과 나사는 김봉연, 김정영으로 나눠지는 [담당사원] 필드가 아닌 [납품처] 대명금속에 종속됩니다. 즉 [제품명] 필드의 집합이 [납품처] 필드의 하나의 값에 종속되는 형태죠.
이를 다치종속이라고 하며 [납품처] →→ [제품명] 으로 봅니다.
이와 마찬가지로 복합 속성(납품처, 제품명)에 대응하는 담당사원 속성은 동일하게 납품처에만 종속됩니다.
[담당사원] 필드의 집합(김봉연, 김정영)은 [제품명]이 아닌 [납품처] 필드의 하나의 값(대명금속)에 종속되기 때문이죠. [납품처] →→ [담당사원]이 됩니다.
함수적 종속관계는 회원님이 설명하신 것이 맞습니다.
다만 다치 종속과 함수적 종속관계가 다르다는 것을 염두해 두세요.
또한 4정규화의 문제는 거의 동일합니다. (예제가 여러개 나올 수가 없는 구조)
모든 필드가 기본키로 구성되어 있어야 하죠. (실제 실무에서 4정규화까지 가는 경우는 없습니다.)
행복한 하루 되세요 :)