Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Algorithmus zur Zerlegung in 3NF (1)

Ähnliche Präsentationen


Präsentation zum Thema: "Algorithmus zur Zerlegung in 3NF (1)"—  Präsentation transkript:

1 Algorithmus zur Zerlegung in 3NF (1)
In der Praxis zerlegt man normalerweise in 3. Normalform. Man kann zeigen, dass Bedingung R = Attribute(R1) (R)  ...  Attribute(Rk) (R) (Verlustlosigkeit + Konsistenzwahrung) gilt für alle Ausprägungen R von TR, die die Abhängigkeiten in  erfüllen, genau dann, wenn die für die Verbindung maßgeblichen (d.h. abzugleichenden) Attribute jeder Teilrelation TRi einen Schlüssel von TRi gemäß i darstellen.

2 Algorithmus zur Zerlegung in 3NF (2)
// Eingabe: Relationstyp TR und Menge von FDs  // c sei kanonische Überdeckung von , // in der FDs absteigend nach Anzahl der Attribute sortiert sind (wichtig) // Idee: bilde separaten Relationstyp TRi(X,Y) für jede FD X  Y in c, // sofern X  Y nicht bereits durch anderen Relationstyp TRj abgedeckt ist i := 0 for each (X  Y)  c do if j: 1  j  i  (X  Y)  Attribute(TRj) then begin j := j  {X  Y} end else begin i := i +1; TRi := (X  Y); i := {X  Y} end end if end for // Relationstyp für Schlüssel von TR bilden, falls noch nicht abgedeckt if 1  j  i: Attribute(TRj) enthalten nicht Schlüssel von TR then begin i := i +1; TRi := irgendein Schlüssel von TR; i :=  end end if

3 Algorithmus zur Zerlegung in 3NF (3)
Gewonnene Zerlegung ist i.A. nicht eindeutig, da Wahlfreiheit bzgl. Bildung und Sortierung der kanonischen Überdeckung und Auswahl des Schlüssels im Abschlussschritt besteht.


Herunterladen ppt "Algorithmus zur Zerlegung in 3NF (1)"

Ähnliche Präsentationen


Google-Anzeigen