0 Daumen
358 Aufrufe

Frage: Wie kann ich in einer Relation (Datenbank) erkennen welche Attribute als Primärschlüssel geeignet sind und wie die Attribute voneinander abhängen?

Z.B wenn ich die Mitarbeiter Nummer habe weiß ich auch die Abteilungsnummer.

Woran kann ich das erkennen? Meine Fragen haben sich in Folge der Umwandlung in die 1.,2. Und 3. Normal Form ergeben.

Hat da jemand einen Trick wie ich diese Abhängigkeiten erkennen kann?


Code:

Avatar von

1 Antwort

0 Daumen
Wie kann ich in einer Relation (Datenbank) erkennen welche Attribute als Primärschlüssel geeignet sind

Der Primärschlüssel braucht nicht aus einem einzigen Attribut bestehen. Er darf auch aus mehreren Attributen bestehen. Geeignet als Primärschlussel sind also nicht Attribute, sondern Mengen von Attributen.

Eine Menge von Attributen, die als Primärschlüssel geeignet ist, nennt man Schlüsselkandidat.

Einen Schlüsselkandidaten S erkennt man an folgenden Eigenschaften.

  • Jedes Attribute, das nicht in S ist, ist von S funktional abhängig.
  • Ist T eine echte Teilmenge von S, dann gibt es ein Attribut, das nicht in T ist und nicht von T funktional abhängig ist.

Dabei heißt ein Attribut Y funktional abhängig von der Menge X wenn gilt

  • Stimmen zwei Elemente der Relation in allen Attributen von X überein, dann stimmen sie auch in Y überein.

Praktisch gesehen kann man einer Tabelle anhand ihres Inhalts nicht ansehen, welche Schlüsselkandidaten es gibt. Der Primärschlüssel sollte sich nämlich nicht ändern, wenn Datensätze hinzugefügt werden. Die Identifizierung von funktionalen Abhängigkeiten ist Teil der Anforderungsanalyse.

wie die Attribute voneinander abhängen?
Z.B wenn ich die Mitarbeiter Nummer habe weiß ich auch die Abteilungsnummer.

Das musst du den Auftraggeber fragen.

Avatar von 5,7 k

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Stacklounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community