Seitenleiste

Community

SQL

Grundlagen

Datenbanksysteme

Client/Server

Eingebettet

BCNF - Boyce/Codd Normalform

Die BCNF ist eine Weiterentwicklung der 3. Normalform.

Definition

Eine Relation befindet sich in BCNF, wenn sie in der 3. Normalform ist und jede Determinante, Schlüsselkandidat ist. (Es darf keine Determinante geben, die nicht Schlüsselkandidat ist).

Determinante: Eine Determinante ist eine Attributmenge von der andere Attribute abhängig sind (z.B. ein Schlüssel ist eine Determinante)

Allgemeines Beispiel

In der Tabelle T gibt es die Attribute „A“, „B“, „C“ und „D“. Dabei gelten folgende Abhängigkeiten:

  • (A,B) → C
  • (A,B) → D
  • C → B

Hier zeigt sich, dass C ein Schlüsselkandidat, eine Determinante, ist.

Auflösung

Dieses Problem wird wie folgt aufgelöst:

  • Die Determinante C wird zu einem Schlüsselattribut und das Attribut B ist kein Schlüsselattribut mehr
  • In einer neuen Tabelle, in welcher C der Schlüssel ist, wird B hinzugefügt
  • In der alten Tabelle wird logischerweise B entfernt und somit ergibt sich, dass A und C der Schlüssel für D sind

Grafisch sehen die Tabellen letztendlich wie folgt aus:


Die Schlüssel sind blau markiert.