Einzelnen Beitrag anzeigen

Reinhard Kern

Registriert seit: 22. Okt 2006
772 Beiträge
 
#6

Re: Definition "Schlüssel" in einer Datenbank

  Alt 18. Dez 2006, 18:08
Zitat von faux:
Hallo!

Ich beschäftige mich gerade etwas genauer mit Datenbanksystemen. Im Prinzip weiß ich was genau ein Schlüssel ist, jedoch muss ich für ein Referat eine genaue Definition finden. Im Wikipedia steht unter Schlüssel (Datenbank) folgender Satz:
Zitat:
Ein Schlüssel dient in einer Relationalen Datenbank dazu, die Tupel einer Relation eindeutig zu identifizieren. Anschaulich kann man sich eine Relation als Tabelle vorstellen. Der Schlüssel einer solchen Tabelle ist dann eine Gruppe von Spalten, die so ausgewählt wird, dass jede Zeile in dieser Gruppe eine einmalige Wertekombination hat.
...
Fremdschlüssel: Ein Attribut einer Relation, welches auf einen Primärschlüssel einer anderen Relation verweist.
Jetzt stellt sich allerdings für mich die Frage, wie man eine 1:n (oder n:m) Beziehung darstellen kann, wenn laut dieser Definition jeder Wert nur einmal vorkommen darf?
...
Grüße
Faux
Hallo,

wörtlich genommen ist die Wikipedia-Aussage falsch. Es gibt normalerweise einen Primärschlüssel, der eindeutig ist, und weitere Schlüssel, nach denen die Tabelle gezielt durchsucht werden kann, die aber eben nicht eindeutig sind, wichtigstes Beispiel ist der Name: schliesslich kann ich ja keinen Müller als Kunden ablehnen, weil schon einer in der Tabelle steht. In der nach Namen sortierten Anzeige kommen die Müllers eben nacheinander. In den meisten Datenbanken kann man wählen, ob ein bestimmter Schlüssel eindeutig sein muss oder nicht.

Eine Auftragsdatenbank hat z.B. einen eindeutigen Primärschlüssel, das ist die Auftragsnummer, und Sekundärschlüssel wie z. B. Kunde oder Lieferdatum, die nicht eindeutig sind - ein Kunde kann ja mehrere Aufträge erteilt haben.

Gruss Reinhard
  Mit Zitat antworten Zitat