Vornamen in separater Tabelle?

Hallo ihr Wissenden,

hier normalisiert gerade jemand eine unsere Datenbanken und hat im Zuge dessen eine Tabelle mit den Namen und eine mit Vornamen. (Weil es ja Leute gibt, die den gleichen Vornamen hat und in einer Datenbank ja nichts doppelt vorkommen soll, was man auch einfach haben kann.)

Ich habe nur mäßig Ahnung von Datenbanken, und bekomme dann ständig irgendwelchen Fachausdrücke um die Ohren geschmissen. M. E. ist das aber der Normalisierung zuviel - warum, wieso, weshalb, das könnte ich nicht begründen. Einfach nur so, sagt mir mein Gefühl.

Bin ich auf dem Holzweg oder unser Datenbanknormalisierer? Und wenn warum? (Wenn es geht auf deutsch und nicht auf fachchinesisch :wink: )

Viele Grüße

gipsy

P.S. gegoogelt habe ich auch schon, allerdings sind die Antworten auf die Frage auch immer mit irgendwelchen Fachausdrücken versetzt, so dass ich am Ende nicht klüger bin.

… dass ich mir das so vorstellen würde:

eine Tabelle mit den Feldern

ID, Nachname, Vorname

oh, da fällt mir gerade ein, die Titel sind auch noch separat und tauchen in der Tabelle Namen gar nicht auf.

also eher dann so:

ID, Nachname, Vorname, Titel

Moin, gipsy,

der Datenbänker scheut die redundante Speicherung wie der Deibel das Weihwasser, weil bei uwei Speicherungsorten die Gleichheit der Daten nicht garantiert werden kann. Dieser Hauptgrund für die Normalisierung liegt hier aber gar nicht vor.

Ein zweiter Grund für Referenztabellen ist die Eindeutigkeit von Begriffen, weshalb gerne die PLZ als Schlüssel für die amtliche Schreibweise von Ortsnamen benutzt wird. Angesichts der beliebigen Schreibweisen von Vornamen - David, Dafid, Davit, Devid - kann hier getrost auf Referenzen (Nachschlagwerke) verzichtet werden.

Euer Normalisierer hat sich vermutlich auch noch nicht mit den mehrfachen oder zusammengesetzten Vornamen befasst, ob nun mit Bindestrichen oder ohne: Karl Heinz, Karlheinz, Karl-Heinz - eine Qual ohne Ende.

Wenn das Elend nicht ausufern soll, gibt es da nur eine Regel: Der Namensträger sagt, wie er geschrieben werden möchte, und das wird als stinknormales Feld aufgenommen: Die Vornamen stehen beim Familiennamen, aus, basta.

Gruß Ralf

Hallo!

Es ist immer schwierig, eine Grenze zu ziehen, wo Redundanz endet.

… dass ich mir das so vorstellen würde:

eine Tabelle mit den Feldern

ID, Nachname, Vorname

Der Irrsinn hinter der redundanzfreien Speicherung von Nachnamen ist doch: Wenn sich z.B. der Name Müller in einen Doppelnamen Müller-Hinz ändert (Frau heiratet) - Was wird dann geändert? Sämtliche Namen aller gespeicherten Personen des ursprünglich gleichen Namens? Hier würd ich mal nachfragen, wie er sich das vorstellt bzw. wie das System mit so einer Änderung umgeht.

oh, da fällt mir gerade ein, die Titel sind auch noch separat
und tauchen in der Tabelle Namen gar nicht auf.

also eher dann so:

ID, Nachname, Vorname, Titel

Gut, den Titel kann man separat speichern, denn die sind ja statistisch gesehen diskret und ändern sich wohl sehr selten in ihrer Zeichendarstellung.

Also das wären jetzt meine Ansichten. Bin auch kein hauptberuflicher Datenbankentwickler, aber eigentlich doch vertraut mit der Materie.

Gruß, Leebo

1 Like

Hallo Leebo,

ID, Nachname, Vorname

Der Irrsinn hinter der redundanzfreien Speicherung von
Nachnamen ist doch: Wenn sich z.B. der Name Müller in einen
Doppelnamen Müller-Hinz ändert (Frau heiratet) - Was wird dann
geändert?

Ich glaube er speichert nur die Voramen redundanzfrei. Ich habe keine dritte Tabelle entdecken können aber auch das halte ich für überflüssig.

ID, Nachname, Vorname, Titel

Gut, den Titel kann man separat speichern, denn die sind ja
statistisch gesehen diskret und ändern sich wohl sehr selten
in ihrer Zeichendarstellung.

Ich sehe ja durchaus ein für die Titel eine separate Datei anzulegen, sind ja nicht so viele und wiederholen sich häufig. Würde die aber nicht dennoch in die Tabelle mit den Namen mit eingebunden werden? (Ich glaube das sind Fremdschlüssel?)

Viele Grüße

gipsy

Hallo!

Ich sehe ja durchaus ein für die Titel eine separate Datei
anzulegen, sind ja nicht so viele und wiederholen sich häufig.
Würde die aber nicht dennoch in die Tabelle mit den Namen mit
eingebunden werden? (Ich glaube das sind Fremdschlüssel?)

Wenn er die Titel separat speichert, muss es nochmals eine weitere (Zwischen-)Tabelle geben, die verschiedenen Personen mit ihnen verbindet; es gilt nämlich eine n:m-Beziehung.

Also meiner Meinung nach ist das den Aufwand nicht wert.

Gruß, Leebo

1 Like

Hi,

Normalisierung gut und schön, aber man kanns auch übertreiben. Macht der Geburtsdaten und Augenfarbe auch separat ? :smile:)

@Ralf: Vielleicht sollten wir den Datenbanker mal mit unserem Normalisierungs-Prof. zusammenbringen. Du erinnerst sich ?

Gruß
Proteus

1 Like

Schade, dass wir die nicht erfassen, wäre ja mal spannend, was er daraus machen würde. :wink:

Danke: Vornamen in separater Tabelle?
Vielen Dank an alle für eure Rückmeldungen! Ich werde mal versuchen unseren Normalisierer ein wenig zu bremsen und hoffe, dass mir das gelingen wird.

Viele Grüße

gipsy