Datenbank Normalisierung?

Normalisierung - (PC, programmieren, Informatik)

4 Antworten

Die PLZ wird nicht zum Primärschlüssel, da es möglich ist, dass eine PLZ für mehrere Orte bzw Ortsteile verwendet wird.

Bei einem Primärschlüssel dürfte es aber nur 1 Ort geben dem die PLZ zugeordnet wird.

Das passiert auch wenn kleine Orte einmal zu einem größeren Ort zusammengefasst wurden und ggf. später wieder getrennt werden in die Ortsteile.

Woher ich das weiß:eigene Erfahrung

Wenn ich eine Datenbank konzipiere, dann ist die von vorneherein normalisiert. Mit gesundem Menschenverstand und Gefühl für Daten braucht man das alles gar nicht. Außerdem kann eine Datenbank weit mehr als das bisschen, was die Schulbeispiele im Informatikunterricht hergeben.

Vermutlich geht das im Unterricht nicht anders. Das ist so ähnlich wie die Grammatik mit der Sprache. Irgendwie braucht man die Grammatik, aber jedes Kind lernt das Sprechen ohne. Und das obendrein noch schneller als ein Erwachsener in der Schule beim Lernen einer Fremdsprache.

Die Datenbanktechnik ist eigentlich recht simpel. Man braucht ein Gefühl für Daten, man muss wissen, warum es Datentypen gibt, etwas boolsche Logik und das Prinzip des Relationalen. Mit 20 % des Befehlsumfanges von SQL kann man schon ganz nette Aufgaben lösen. Die restlichen 80 % werden für Sonderfälle gebraucht. Das Wichtigste beim Konzipieren einer Datenbankanwendung ist die genaue Kenntnis der Aufgabe, des Betriebsablaufes. Der Auftraggeber hat meistens nur eine nebulöse Ahnung von seinem eigenen Laden und hat nur vage Vorstellungen von dem, was er eigentlich will.

1.Normalform , Atomisierung

Erstmal teilt man alle Daten in einzelne Felder . z.b. Name in Name und Vorname ,

Straße in Straße und Nr .

2.Normalform

Dann geht es um die funktionale Abhängigkeiten . Zweite Normalform ist wenn die 1. Normalform vorhanden ist und alle nicht Schlüsselattribute von allen ganzen Schlüsseln abhängig ist.

Also Kunde hat Wohnsitz in Straße

3.Normalform

2.Normalform muss vorliegen und nun werden nicht Schlüsselattribut aus ihrer transitiven Abhängigkeit gelöst wurden

Transitiv ist also wenn der Ort transitiv abhängig ist vom Namen oder Straße aber eigentlich nur von PLZ abhängig ist . Bzw Ort nun Primärschlüssel Kunde hat.

Die 3.Normalform macht es Monothematisch . Also nur auf dem Zusammenhang der nötig ist . PLZ , Ort .

Jetzt könnte man denken das auch Straße dazu gehört , das ist aber nicht so in Großstäten hat man in der gleichen Straße je nach Hausnummer eine bestimmte PLZ.

Die 3. Normalform trennt also alle Abhängigkeiten in seine monothematischen Komponenten

Theoretisch kann man das noch auch Normalform 4 und 5 bringen . Ist aber pratisch unpraktisch :)

PWolff  25.02.2019, 16:22

Zur PLZ: Umgekehrt haben manchmal auch mehrere kleine Gemeinden dieselbe Postleitzahl. Ob die sich auch mit ihren Straßennamen aufeinander abstimmen, weiß ich nicht.

1
RakonDark  25.02.2019, 16:29
@PWolff

ja da haben die wieder murks gemacht , praktisch hat man dann echt ein problem wenn man PLZ noch als primär schlüssel verfendet.

0

Die erste Tabelle zeigt, dass jede Spalte atomare Werte enthält (1. NF) und die Kriterien der zweiten Normalform erfüllt sind, da der Schlüssel nicht zusammengesetzt ist. Somit ist sie in der zweiten Normalform.

In der Praxis kannst du die zweite Normalform überspringen und gleich alles so ändern, dass es in der dritten vorliegt.

Woher ich das weiß:Berufserfahrung – Programmierer