Voll funktionale Abhängigkeiten (4) FID PID GeoName Farbe KID X Y Z GeoName Material GeoName Gewicht Material Dichte PID X PID Y PID Z FID Farbe FID GeoName (GeoName Farbe) FID Material Gewicht Dichte
Schlüssel (1) Logisches Datenmodell: Schlüsselbedingung ist als einzige lokale Konsistenzregel im Relationenmodell verankert. Aufgabe: Abbildung funktionaler Abhängigkeiten auf Schlüsselattribute. R Î Rm m-stellige Relation vom Typ TR X Í AR Attributmenge über R X heißt Schlüsselkandidat von TR, falls X AR Anmerkungen: Jeder Relationstyp TR besitzt zumindest einen Schlüsselkandidaten. Extremfall: gesamte Attributmenge AR. Für TR können mehrere Schlüsselkandidaten existieren. Einer davon wird als Primärschlüssel ausgezeichnet. Beispiel: (FID KID PID) ist Schlüsselkandidat in KomplGeoKörper.
Schlüssel (3) Berechnung: F sei eine Menge funktionaler Abhängigkeiten zum Relationstyp TR. Bilde für jede Teilmenge A Í AR die Hülle AF+. Schlüsselkandidaten sind minimale A mit AF+ = AR (minimal: Für jedes B Ì A gilt: BF+ ¹ AR). Im Beispiel: (FID KID PID) ist Schlüsselkandidat: (FID KID PID)F+ = (FID KID PID GeoName Farbe Material Dichte Gewicht X Y Z) Dagegen liefern (FID PID)F+, (FID KID)F+ und (PID KID)F+ noch nicht AR. Weiterer Schlüsselkandidat: (GeoName Farbe KID PID)F+ = AR
Schlüssel (4) Graphische Bestimmung: Fertige Diagramm der funktionalen Abhängigkeiten. Bestimme Menge der Kästchen ohne eingehende Kanten. Bei Zyklen: Füge eines der beteiligten Kästchen zur Menge dazu, falls noch keines enthalten. Die entstandene Menge ist Schlüsselkandidat. KID FID PID Material Gewicht Dichte GeoName Farbe X Y Z (FID KID PID) (GeoName Farbe KID PID)