Schlüsselkandidaten bestimmen?
Hey liebe Community,
für die Klausur (Thema Datenbanken ect.) müssen wir unter anderem Schlüsselkandidaten von Relationen bestimmen. Ich finde persönlich alle Erklärungen im Internet zu "schwammig":
-> Einerseits sollte man schauen ob ein Attribut nur links vorkommt. Wenn ja ist es save im Schlüssel.
-> Attribute die auf beiden Seiten vorkommen können, aber müssen nicht im Schlüssel enthalten sein.
-> Attribute die nur links vorkommen haben im Schlüssel nichts verloren.
-> Falls ein Attribut nicht vorkommt, -> Teil des Schlüssels.
Diese Erklärung (und viele weitere) ist ja schön und gut, doch es gelingt mir fast nur jedes 3. Beispiel den/die Schlüssel richtig zu bestimmen.
Beispiel:
B->CD
C->AB
AC->ABD
BDE->AE
1) Wir haben kein Attribut, was sich nur auf der linken Seite befindet.
2) Rein optisch betrachtet kann jedes Attribut im Schlüssel vorkommen, da es sich rechts und links befindet.
Ich habe es ab da immer so versucht, dass ich einfach versuche die kleinste menge an Attributen zu suchen, die alle anderen Ausdrücken. Die Lösung hier ist {CE} und {BE}. Wie kommt man darauf. Über eine Hilfe, bzw. einen allgemeinen Lösungsweg für jede Art von Bsp. würde ich mich sehr freuen :)
Lg
1 Antwort
Also mich verwirrt das ziemlich.
Ich denke so: Schlüssel müssen eindeutig sein und möglichst wenig Speicher verbrauchen. Ideal ist daher etwa: 1 2 3 4 5 6....
Du kannst noch suchen unter primary key und foreign key. Das wird gut erklärt an vielen Fundestellen.