2016-06-26 8 views
0

고려 관계 스키마 R = (A, B, C, D, E, F) 기능적 종속성들의 세트 :주어진 관계 스키마에서 후보 키를 선택하는 방법 R?

A→B 

A→C 

BC→E 

BC→D 

E→F 

BC→F 

관계 R의 후보 키인가? 주어진

A) A 

B) BC 

C) ABC 

D) ABCE 

표준 I 답이 관계 후보 키로 ABC 사용해야 C이다.

그러나 이후

는 :
A -> B,C 

B,C -> D,E,F 

그래서 나는 내가 의존 관계를 오해 했나

A -> B,C,D,E,F 

모든 다른 속성을 식별 할 수있을 것 같아요?

왜 A를 후보 키로 사용하여 나머지 모든 속성을 식별하지 못합니까?

+0

아마도 "식별 할 수 없음"을 "기능적으로 결정"한다는 의미입니다. A -> B, C & BC -> D는 ABC -> D를 암시한다는 것을 보여주기 위해 어떤 규칙/공리 *를 사용할 수 있습니까? 추신 : "의존 관계"란 무엇을 의미합니까? – philipxy

답변

2

맞아요,이 경우에는 (후보) 키는 A이고, A B C은 슈퍼 키입니다.

후보 키의 공식 정의가 "관계의 모든 속성을 결정하고 그 속성을 제거하여이 속성을 잃는 속성 집합"이라고 가정하면 A, A+의 종료가 이 속성의 모든 속성은 다음과 같습니다.

A+ = A (to compute the closure, we start with the attribute) 
A+ = ABC (for transitivity with respect to A→B and A→C) 
A+ = ABCDEF (for transitivity with respect to BC→E and BC→D and BC→F) 

또한이 속성이있는 고유 한 속성 집합임을 쉽게 알 수 있습니다. 실제로 A은 기능 종속성의 오른쪽 부분에는 나타나지 않으므로 다른 (후보) 키에 있어야하므로 다른 속성 또는 속성 조합에 의해 결정되지 않습니다. 그러나 이미 (후보) 키이기 때문에이를 포함하여 모든 속성 집합이 적절한 수퍼 키가됩니다.