PDA

Vollständige Version anzeigen : Tabellenaufteilung


Stefan77
24.09.2003, 12:53
Hallo,

ich habe folgendes Problem:

In meiner Fahrzeugdatenbank gibt es eine Tabelle Fahrzeuge in dieser Tabelle gibt es u. a. auch das Feld "reserviert".
Ich bin nun am Überlegen, ob man für "reserviert" eine eigene Tabelle anlegt mit Fremdschlüssel FahrzeugNr, weil das Feld nur bei ca. 5 der 6000 Fahrzeuge auf "JA" gesetzt ist.

Das gleiche habe ich bei der Tabelle Kunden. Sollte man das Feld "Geburtsdatum" aus der Tabelle herauslösen, weil es nur bei ca. 0,5 % der Datensätze belegt ist und dafür eine eigene Tabelle anlegen?

Hätte gern gewußt wie Ihr das generell handhabt.
Danke im voraus.

racoon0506
24.09.2003, 13:04
ist IMHO überflüssig. Da es sich um ein einziges Feld handelt, welches auch nur eine einzige Info zu dem Datensatz wiedergibt, kann das in der Ursprungstabelle bleiben.
Sinnvoll ist für mich ein Herauslösen eines Feldes dann, wenn der Datensatz für dieses Feld eine 1:n Beziehung bekommen kann, sprich es gibt hierfür mehrere Informationen des gleichen Typs...., oder wenn die gleiche Information/der gleiche Wert mehrfach in der Stammtabelle verwendet wird und das Speichern des Fremdschlüssels platzsparender ist.

Nouba
24.09.2003, 13:06
Hallo Stefan,

das Geburtsdatum könnte man auslagern. Die zu erstellende Tabelle wäre dann 1:1 mit der Haupttabelle verknüpft. Anders könnte es bei der Reservierung aussehen. Wenn ein Fahrzeug zu mehreren Ereignissen reserviert werden kann, könnte eine Reservierungstabelle mit FahrzeugID, ReserviererID und einem Datum, evtl. Dauer, usw. die Reservierungen widerspiegeln.

Stefan77
24.09.2003, 14:20
Also wäre es jetzt doch generell sinnvoll das Feld Geburtsdatum herauszulösen oder nicht? Welche Vor- und Nachteile hätte dies?

Nouba
24.09.2003, 14:45
Hallo Stefan,

der Vorteil wäre, dass es keine leeren Felder in der Tabelle gibt. Der Nachteil wäre, dass eine Tabelle mehr vorhanden ist, und eine geimeinsame Darstellung im Formular auch mit leeren Geburtsdaten eine Abfrage mit einem Outer Join benötigt wird. Ich würde mir auch die Frage stellen, ob das Geburtsdatum überhaupt ausgewertet wird oder werden soll. Vielleicht willst Du Deinen Kunden einen Geburtstagsgruß zukommen lassen.