Databases Reference
In-Depth Information
Matrikel-Nr
Student
Kurs-Nr
Kurs-Titel
Note
30321
Meyer, J.
706S6
Datenbanksysteme
1,0
30321
Meyer, J.
715S4
Software-Engineering
1,7
30346
Ahrens, H.
715S4
Software-Engineering
3,0
30346
Ahrens, H.
706S6
Datenbanksysteme
2,0
30346
Ahrens, H.
713S5
relationale u. funktionale Programmie-
rung
1,7
30378
Knudsen, K.
706S6
Datenbanksysteme
2,0
Tabelle 3.12: Relation »Kursbelegung«
3.4.7 Die Boyce-Codd-Normalform (BCNF)
Wenn wir bei der Formulierung die störende Zusatzbedingung mit dem Primattri-
but weglassen, erhalten wir die Boyce-Codd-Normalform, die also eine Verschär-
fung der dritten Normalform darstellt.
Boyce-Codd-Normalform (BCNF)
Eine Relation ist in der Boyce-Codd-Normalform, wenn für jede nicht triviale funk-
tionale Abhängigkeit
T
A T
Obermenge eines Schlüssels ist.
Die BCNF ist eigentlich die einfachste Normalform:
Es gibt nur funktionale Abhän-
gigkeiten, die aufgrund der Schlüsseleigenschaften zu gelten haben
. Es ist aber bei vorge-
gebener Menge von funktionalen Abhängigkeiten nicht möglich, für jede Relation
eine Menge von Projektionen anzugeben, so dass die Relation sich als Verbund die-
ser Relationen darstellen lässt und genau die Werte für die Projektionen möglich
sind, die als Verbund zulässige Werte für die Ausgangsrelation ergeben.
→
Beispiel für eine Relation in 3NF mit gegenseitigen Ausschlusskriterien
So sei folgende Relation in der Hochschule im Rahmen des Vorlesungsplans gege-
ben (vgl. Tabelle 3.13):
Stundenplan (tag, block, dozent, lehrveranstaltung, raum)
Ta g
Block
Dozent
Lehrveranstaltung
Raum
Montag
1
Otten
Datenbanksysteme
PC-Labor
Montag
2
Otten
Datenbanksysteme
PC-Labor
Montag
1
Hinz
Chemie
Chemie-Hörsaal
Montag
2
Hinz
Chemie
Chemie-Hörsaal
Dienstag
1
Otten
Java
PC-Labor
Tabelle 3.13: Relation »Stundenplan«