ich beschäftige mich seit Kurzem mit MySQL, da ich eine Datenbank aufbauen möchte. Als Einstieg benutze ich das Handbuch, das auf der MySQL Homepage zu finden ist. Auch ein Buch habe ich mir bestellt, dies befindet sich aber noch auf dem Postweg.
Nun zu meiner Frage: Angenommen meine Datenbank umfasst Abspielgeräte, dann könnte meine Datenbank etwa so aussehen (Produkt | Type):
Produkt A | VHS
Produkt B | DVD
Produkt C | VHS
Produkt D | Blueray
Produkt E | HDD
…
Allerdings gibt es auch Kombi Geräte, etwa Player, die DVDs und Blueray Discs abspielen können. Wie muss ich in diesem Fall meine Datenbank gestalten?
Hi,
für mich - als Profi - rollen sich bei mir sofort die Fußnägel hoch wenn ich deine vereinfachte Sicht auf das real existierende Problem sehe.
Die Lösung von Heavy ist die richtig und nicht weiter zu vereinfachen.
danke für die Erklärung. Um das Beispiel etwas praxisnäher zu gestalten könnte ich noch weitere Informationen in meine Datenbank eintragen, wie etwa die UVP, das Gewicht sowie die Farbe des Abspielgerätes. Bei der Farbe habe ich den Fall, dass ein Gerät auch mehrfarbig sein. Könnte meine Datenbank nun so aussehen:
Produkt
ID | Name | UVP | Gewicht
1 | Produkt A | 225 | 2500
2 | Produkt B | 330 | 1450
3 | Produkt C | 170 | 2700
Ich habe mittlerweile meine Datenbank auf Papier visualisiert. Da es sich um eine sehr kompakte Datenbank handelt, hält sich der Aufwand zum Glück in Grenzen. Allerdings stehe ich vor einer neuen Herausforderung. Angenommen in meiner Datenbank befinden sich Notebooks und ich möchte darin eintragen ob diese über eine Bluetooth Karte verfügen. Wenn Bluetooth vorhanden ist, möchte ich auch den Hersteller der Karte sowie die Buetooth Version speichern. Wie könnte eine solche Datenbank aussehen? Ich nehme an alles in eine Tabelle mit einer Spalte „Bluetooth“, einer Spalte „Hersteler“ und einer Spalte „Version“ ist nicht die eleganteste Lösung, oder?
Notebook
Produkt_ID | Notebook_Name |Bluetooth| Hersteller | Version |
in Worten (Keys unterstrichen, FS sind Fremdschlüssel):
Produkt.FS_Typ_Id verweist auf Typ.Typ_Id, dort findet sich die Angabe zur Abspieltechnik; damit ist die 1:n-Beziehung Typ zu Produkt abgebildet. Finish.FS_Produkt_Id und Finish.FS_Farbe_Id sind Schlüsselbestandteile, so wird die m:n-Beziehung Finish zu Farbe umgesetzt.