Zwischenprodukte

Lösung

Die Lösung besteht darin, dass zwei neue Tabellen "Zwischenprodukte" und "ZP-Rezepturen" erstellt werden müssen. Die Tabelle "Zwischenprodukte" enthält alle Produkte, welche selber zur Synthese von Produkten verwendet werden. Sie muss einen eigenen ID- Schlüssel (z.B. ZPNr) besitzen, welcher aber die gleichen Werte haben kann, wie der entsprechende Fremdschlüssel aus der Produktetabelle. Dieser könnte zwar auch gleichzeitig den ID-Schlüssel der Tabelle "Zwischenprodukte" bilden, weil er nur eindeutige Werte annehmen kann (wegen der 1-c Beziehung), doch dann gäbe es einen Konflikt in der Tabelle "ZP-Rezepturen". Diese bekommt nämlich zwei Fremdschlüssel (aus Produkte und Zwischenprodukte), welche dann den gleichen Namen hätten, was nicht erlaubt ist. Besonders kreative Leute gehen dann hin und ändern einfach den Namen des Fremdschlüssels, so dass er anders heisst, als der entsprechende ID- Schlüssel. Dies sollte aber tunlichst vermieden werden, weil sonst nicht mehr klar ist, welche Beziehungen zwischen den Tabellen existieren. Daher sollte immer darauf geachtet werden, dass Fremd- und Identschlüsselattribute gleich benannt werden.

Datenmodell