2016-04-20 16 views
0

Dies ist eine Frage aus einer Probe Midterm von meinem Datenbankkurs. Die Lösung ist nicht für die midterm uns gegeben und ich wollte nur fragen, ob meine Lösung in irgendeinem Sinne richtig istFinden Sie alle Kandidatenschlüssel, die aus 3 Attributen bestehen, falls vorhanden? Beispiel Midterm

Consider the following relation T=(N,A,I,V,L,P,C,D) 

with the FD={N->AI , AV->LP, VC->PD, VL->P, LA->D, NP->IVL, CID-> LVP, AD->IP} 
Find all candidate keys that consist of 3 attributes if any? 

ich die Frage zu lösen versucht, und das ist, was ich habe:

Left Attributes = N,C 
Middle Attributes = A,I,V,L,P,D 
Right Attributes = None 

ich habe dann drei Attributpaare mit NC und fand ihre Verschlüsse:

NC+ = {NCAI} NO 
NCA+ = {NCA} NO 
NCI+ = {NCI} NO 
NCV+ = {NCVPDAIL} = Get PD from VC->PD AND AI from N->AI and L from NP->IVL? Is this correct? If IV is already in there can I use this dependency to get L? 
NCL+ ={NCLAIDVP} = Get AI from N->AI & D from LA->A and VP from CID->LVP using same logic from above? 
NCP+ = {NCPAIVLD} straight forward using same logic from above 
NCD+ = {NCDAILVD} YES 

Also habe ich 4 Kandidaten Schlüssel, die drei Attribute in ihnen haben. welche sind NCV, NCL, NCP, NCD.

Also habe ich es gefunden oder sollte es nur einen Kandidatenschlüssel geben, der NCD sein sollte?

Vielen Dank!

Antwort

0

Sie haben die richtige Antwort gegeben. Die Beziehung hat nur vier Kandidatenschlüssel, NCV, NCL, NCP, NCD, alle mit drei Attributen.

N und C müssen immer in jeder Taste vorhanden sein, da sie nur im linken Teil erscheinen. Der Versuch, ihnen die anderen Attribute hinzuzufügen und die Schließung zu berechnen, ist notwendig, um zu überprüfen, welche Schlüssel die Schlüssel sind. Beachten Sie, dass NCA + und NCI + gleich NC + sind und NCAI erzeugen. Sie sollten auch die Kombination NCAI + versuchen, aber das Ergebnis ist das gleiche. Am Ende erzeugt jedes der vier Attribute V L P und D, die zu NC hinzugefügt wurden, einen Schlüssel, und Ihre Antwort ist korrekt.

+0

Vielen Dank! Ich habe jetzt viel Verständnis für diesen Teil meiner Abschlussprüfung. Noch einmal vielen Dank! –