Databases Reference
In-Depth Information
Tabelle 3.2:
Eine Relation vom Grad 2
a
1
a
2
1
x
2
y
5
x
8
z
3
y
bereits das dazugehörige Tupel aus R; das Attribut a
1
identifiziert die Tupel der
Relation R. Wenn der Wert 8 gegeben ist, dann gehört dazu das Paar
(
8, z
)
.
Das ist nicht selbstverständlich: Weil das Attribut a
2
Dubletten enthält, gibt es
in der Projektion auf a
2
nur drei verschiedene Werte. Das Attribut a
2
identifi-
ziert die Tupel von R also nicht eindeutig. Zum Wert x gehören beispielsweise
die Paare
(
1, x
)
und
(
5, x
)
. Eine eindeutige Zuordnung ist nicht möglich.
Die Eigenschaft, Tupel mit Hilfe einzelner Attribute oder auch mit Kombinatio-
nen mehrerer Attribute innerhalb einer Relation identifizieren zu können, ist so
fundamental, dass wir dazu einen neuen Begriff einführen:
Definition: Superschlüssel
Ein Teiltupel a der Attribute einer Relation R heißt genau dann Super-
schlüssel, wenn
j
a
(R)j=jRj
gilt.
Jedes Tupel aus der Projektion auf einen Superschlüssel ist einmalig und iden-
tifiziert „sein“ Tupel aus R bereits eindeutig. In unserem Beispiel ist a
1
also ein
Superschlüssel, a
2
hingegen nicht.
Hinweis
Für je zwei Tupel s und t aus R mit s
6=
t und für jeden Superschlüssel
a gilt
a
(
s
)6=
a
(
t
)
Da die Relation R eine Menge ist und daher jedes Tupel genau einmal enthält, ist
auch das Tupel, das aus allen Attributen von R besteht, ein Superschlüssel. Jede
Relation hat also mindestens einen Superschlüssel. Weil Relationen keine Dublet-
ten enthalten, ist die vollständige Attributmenge einer Relation immer ein Super-
schlüssel.