Datenbanken normalisieren

Damit eine Tabelle die Kriterien der ersten Normalform erfüllt, muss der Datenbank-Designer sicherstellen, dass jede Zeile einmalig ist, dass jede Zelle in einer Spalte den gleichen Daten-Typ verwendet und dass jede Zelle nur einen Wert enthält. Normalerweise muss sich der Designer darauf konzentrieren, alle sich wiederholenden Datengruppen zu entfernen, damit ein Datenbank-Schema der ersten Normalform entspricht.

Zur Illustration von sich wiederholenden Datengruppen habe ich der Tabelle employee in Abbildung D Gebäude-Informationen hinzugefügt. Man kann erkennen, dass die Gebäudenummer (building_num), der Gebäudename (building_name) und der Ort des Gebäudes (building_location) für jeden neu eingegebenen Angestellten wiederholt werden würde. Muss man nun einen Gebäudenamen ändern, müsste man den Datensatz jedes Angestellten aktualisieren, der diese Gebäudeinformation enthält. Auch weitere Anomalien sind denkbar. Die Konsolidierung dieser wiederholten Informationen in einer neuen Tabelle und das Einrichten einer Fremdschlüssel-Beziehung würde für die Anwendung ein besseres Design darstellen.


Abbildung D: Sich wiederholende Gruppen

Ein Beispiel aus dem wahren Leben

Kürzlich dachte ich über eine Integrationsbrücke zwischen einer Anwendung, die ich gerade baue, und einer Anwendung, auf die ein Kunde migrieren wird, nach. Mir wurde gesagt, der Kunde beabsichtige, Primärschlüssel für den Vertrieb zu erstellen, indem er den Namen des Verkäufers bzw. der Verkäuferin mit seiner oder ihrer territory_id verkettet. Dies würde in etwa wie in Abbildung E aussehen.


Abbildung E: Primärschlüssel

Wie ersichtlich, muss man alle Daten einer Person verdoppeln, mit Ausnahme eines neuen Schlüssels, wenn dieser Person mehr als ein Verkaufsgebiet zugeordnet ist. Dies ist die Handschrift eines Designs, das die Anforderungen der ersten Normalform nicht erfüllt, denn hier gibt es redundante Daten.

Page: 1 2 3 4 5

ZDNet.de Redaktion

Recent Posts

Kostenloser Kurs zum Ausbau von Low-Code-Programmierung

Die OutSystems Developer School hilft Entwicklern, in 2 Wochen komplexe reaktive Anwendungen mit der Low-Code-Plattform…

1 Woche ago

Cloudflare: DNS-basierte DDoS-Angriffe steigen im ersten Quartal um 80 Prozent

Das Jahr 2024 beginnt laut Cloudflare mit einem Paukenschlag. Die automatischen Systeme des Unternehmens wehren…

1 Woche ago

Roblox: 34 Millionen Zugangsdaten im Darknet

Laut Kaspersky nehmen Infostealer gerade auch Spieleplattformen ins Visier. Neue Studie untersucht Angriffe zwischen 2021…

1 Woche ago

EU-Datenschützer kritisieren Facebooks „Zustimmung oder Bezahlung“-Modell

Ohne eine kostenlose Alternative, die ohne Zustimmung zur Verarbeitung personenbezogener Daten zu Werbezwecken auskommt, ist…

2 Wochen ago

Europol meldet Zerschlagung der Phishing-as-a-Service-Plattform LabHost

LabHost gilt als einer der größten Phishing-Dienstleister weltweit. Die Ermittler verhaften 37 Verdächtige, darunter der…

2 Wochen ago

DE-CIX Frankfurt bricht Schallmauer von 17 Terabit Datendurchsatz pro Sekunde

Neuer Datendurchsatz-Rekord an Europas größtem Internetknoten parallel zum Champions-League-Viertelfinale.

2 Wochen ago