Determinante (Informatik)
# Determinante (Informatik)

Eine Determinante ist ein Begriff der relationalen Entwurfstheorie, die sich mit dem konzeptuellen Entwurf der Schemata relationaler Datenbanken befasst. Die Determinante beschreibt die Abhängigkeit zwischen Attributen einer Relation. Sie legt fest, welche Attributmengen den Wert der übrigen Attribute bestimmen.

## Definition

Ein oder mehrere Attribute eines Relationenschemas fungieren als Determinante, wenn andere Attribute des Relationenschemas funktional von diesen abhängen; wenn also $A$ und $B$ jeweils eine Menge von Attributen eines Relationenschemas $R$ sind, dann ist $A$ eine Determinante von $B$, wenn $B$ von $A$ funktional abhängt (in Zeichen $A\rightarrow B$). Eine Determinante ist eine Bedingung, welche die möglichen Ausprägungen eines Datenbankschemas einschränkt, denn wenn $A\rightarrow B$ gilt, dann sind nur solche Ausprägungen von $R$ zulässig, für die gilt:

    Wenn zwei Tupel gleiche Werte für sämtliche Attribute in $A$ haben, dann müssen in beiden Tupel auch die Werte aller Attribute in $B$ übereinstimmen.

## Determinanten und Schlüssel

Falls $A$ Determinante von $R$ ist, also innerhalb der Relation $R$ alle anderen Attributwerte durch $A$ bestimmt werden, dann heißt $A$ Superschlüssel von $R$. Des Weiteren gilt, dass wenn

* $A$ eine Determinante von $R$ ist und
* $A$ minimal ist

(anders gesagt: $R$ ist funktional von $A$ abhängig, aber nicht von einer echten Teilmenge von $A$), dann ist $A$ ein Schlüsselkandidat oder Kandidatenschlüssel, unter denen einer als Primärschlüssel für $R$ ausgewählt werden kann. Das Schema $R$ ist dann voll funktional abhängig von $A$.

