Stephan: Problem beim logischen Aufbau einer Datenbank

Beitrag lesen

Hi,

ist event. ein bisschen zu spät, aber ich Antworte trotzdem mal.

Grundsätzlich ist für Deine Anforderung die Aufteilung der Tabellen notwendig, da Du in einer Tabelle ja nicht willenlos viele Felder einfügen kannst. Dadurch würde die logische Struktur durcheinander gebracht werden.
Da ich leider nicht soviel Erfahr. mit MySQl (Arbeite selbst mit Access und Paradox) habe, kann ich Dir leider nur einen Ansatz bieten.

Angenommen Du hast Produkte mit beliebig vielen Eigenschaften, dann gehst du ungefähr so vor

Produkte:

Art.-Nr.     Bezeichnung   Preis  
---------------------------------------
012365 (key) Artikel 1     12,00  
235866 (key) Artikel 2     20,00

Eigenschaften:

Id (key)     Art.-Nr.     Eigenschaft
-------------------------------------------
AutoWert     012365       Groß        
AutoWert     012365       Schwer

In Tabelle 1 ist das Schlüsselfeld die Artikel Nr. (darf nur einmal vorkommen), dies ist das Feld das Du mit dem [Art. Nr.] Feld in der Eigenschaften Tabelle verknüpfst (hier müssen Mehrfacheinträge möglich sein). Jetzt solltest Du ind Lage sein einem Produkt mehrere Eigenschaften zuzuweisen.

Wie Du das in MySQL realisierst, kann ich Dir wie vorhergehend schon erwähnt leider nicht sagen. Ich hoffe trotzdem, das ich Dir ein wenig weiterhelfen konnte. Für weitere Informationen empfehle ich Dir auf den HP's diverser UNI's nachzuschauen, da gibte es Teilweise sehr gute Referate (gerade auch zu den Normalformen, die auf jeden Fall beachten solltest).

Gruß Stephan