eine oder mehrere tabellen?

sven85

Neuer Benutzer
Beiträge
2
hallo zusammen,
bei uns gibt es zur zeit eine kleine Meinungsverschiedenheit. daher würden mich einfach mal ein paar Meinungen dazu interessieren.

Welcher der beiden folgenden Ansätze ist zu bevorzugen:

Ansatz 1: Eine einzige Datenbanktabelle mit mehreren Spalten (sagen wir mal zwischen 5 und 10 Spalten). Simpler Ansatz, die Datensätze werden einfach da reingeschrieben und fertig.

Ansatz 2:
Mehrere Tabellen: Aus der ersten werden Spalten in denen es nur bestimmte Einträge geben kann in eine neue Tabelle ausgelagert, die dann nur aus dieser Spalte und einer Id besteht. In der eigentlichen Tabellen wird dann über Fremdschlüssel nur diese Id eingetragen.
In der Anwendung nachher hätte man dann 4 Tabellen die mit Inner Joins verknüpft werden.

Welcher der beiden Ansätze hat welche Vor- und Nachteile?

Danke für Feedback.
 
Werbung:
AW: eine oder mehrere tabellen?

Das kann sehr unterschiedlich sein. Wenn es sich nur im winzige Informationen handelt kann man durchaus mal von der perfekt normalisierten Datenbank abweichen (Dein Thema: http://de.wikipedia.org/wiki/Normalisierung_(Datenbank) )Im wesentlichen wird die Datenbank kleiner und eventuell schneller wenn große Daten in eigene Tabellen ausgelagert werden können. Aber je nach Anwendung kann der Aufwand, um Daten bei der Darstellung wieder zusammen zu führen natürlich erheblich variieren.
 
AW: eine oder mehrere tabellen?

Hi,
Da hast Du ein Thema angeschnitten bei dem es von 5 Experten 10 Meinungen gibt, und keine ist richtig. ;-)
So wie ukulele sagt spielen da viele Faktoren eine Rolle. Was ICH auch immer sehr wichtig finde ist die Häufigkeit und Quelle der Updates. Und die Bedienerfreundlichkeit.
Ich habe eine Tabelle, die eigentlich allen Regeln wiederspricht, aber die wird halt nur ein oder zwei mal im Jahr von einem Techniker upgedatet, der keine Ahnung von Tabellen, Keys usw hat. Der liefert ein EXCEL-Sheet mit allen Daten weil er damit schnell und bequem arbeiten kann. Solange die Reaktionszeit bei Abfragen nicht hinkt, warum nicht?
 
AW: eine oder mehrere tabellen?

Bestes Beispiel sind Dokumenteninformationen und Report Tabellen in unserem Dokumentenmanagment System, da wird quasi der umgekehrte Weg gegangen.

Eine Ablagemaske zu einem Dokument kann vom Admin mit beliebig vielen Informationsfeldern bestückt werden. Hier wird nicht jede Information in eine Spalte in der Tabelle umgesetzt und jede Maske bekommt eine eigene Tabelle (durch verschiedene Ablagemasken kann die Anzahl und Art der benötigten Felder stark variieren), sondern es gibt eine Tabelle wo abgesehen vom Fremdschlüssel nur in einer Spalte steht um welches Maskenfeld es sich handelt und in einer anderen der Wert. Gleiches Prinzip gibt es häufig bei Logs und Reportings. Nachteil ist z.B., das die Wertespalte alles als varchar speichert.
 
Werbung:
AW: eine oder mehrere tabellen?

Hallo,

also bis NF2 würde ich im Normalfall schon gehen.

Bei Tabellen die hinterher nur noch aus Zahlenwerten bestehen (bei N:M Beziehungen geht es oft nicht anders) kann man dann noch mal den Sinn der Normalisierung hinterfragen.

Natürlich kann man eine Datenbank auch Kaputt-Normalisieren.
Wenn die Anzahl der benötigten Tabellen für eine einfache Abfrage einfach so hoch wird das die Abarbeitung ineffizient wird.
Aber mit 4 Tabellen bist Du da weit entfernt von.

@Verfechter der 1-Tabellen variante:

Hat hier jemand Bammel vor komplexen Abfragen?:D

Gruß Charly
 
Zurück
Oben