Tabellenbeziehung

Hallo,

falls einer meine Frage liest und denken sollte „Ist der doof!“, keine Panik, ich stimme dem zu.
Folgendes Problem (ja ich bin Neuling bei Access). Ich habe ja inzwischen herausbekommen, Buch sei Dank, wie ich Beziehungen zwischen Tabellen erstelle. Aber, ich habe deren 2, also Tabellen, nämlich product und suppliers und brauche eine 1,n-Beziehung. Wie erkläre ich Access daß Datensatz 1,4 und 7 in products verknüpft werden soll mit DS 2 in suppliers, sowie DS2 in products mit DS 5 in suppliers…
mit der Voraussetzung natürlich, daß jedes Produkt von einem supplier hergestellt wird, aberst ein supplier eben mehrerere Produkte produziert.

Sagte ich schon, daß ich doof bin?

Ralph

Hi Ralph,

ohne behaupten zu wollen, dass ich Deine Frage ganz verstanden hätte: Ich vermute, dass hier keine 1:n-Beziehung vorliegt, sondern ein m:n. Das hieße, eine weitere Tabelle wird gebraucht, die zwischen product und supplier steht:

product 1:n product_von_supplier n:1 supplier.

Gruß Ralf

Hi Ralf
Nö, 1:n ist schon OK, weil ein Produkt nur von je einem Hersteller kommt.
Also, Tabelle products enthält ca. 150 Produkte, Tabelle suppliers ca. 70 Hersteller. Beide sind alphabetisch sortiert. Kann ich jett in eine Beziehung irgendwie einarbeiten, daß Produkt 1 von Hersteller 7 kommt und Produkt 2 von hersteller 33, der ausserdem noch Produkt 4 und 11 anbietet oder, was ich vermute, müssen die Hersteller in der Reihenfolge in der supplier-Tabelle stehen, wie die entsprechenden Produkte in der products-Tabelle?

Ralph (nur echt mit PeHa)

Was vergessen

Öoder, was ich

vermute, müssen die Hersteller in der Reihenfolge in der
supplier-Tabelle stehen, wie die entsprechenden Produkte in
der products-Tabelle?

Wenn meine Vermutung stimmt, müßte ich einen Hersteller, der z.B. 3 Produkte herstellt, auch dreimal in der supplier-Tabelle aufführen. Es fällt mir schwer, das zu glauben.

Ralph (du weißt schon)

Hi Ralph (wie fürnehm!),

versuchen wir’s mal andersrum:

  • jedes Produkt hat einen Hersteller, ein Hersteller hat viele Produkte
  • jedes Produkt hat einen Lieferanten, ein Lieferant hat viele Produkte

Dann trägt jedes Produkt die Infos, wer es herstellt und wer es liefert, damit ergibt sich

PRODUKT (Produkt-Id, Hersteller-Id, Lieferant-Id)

Hersteller-Id und Lieferant-Id sind foreign keys auf die jeweiligen Tabellen.

Gruß Ralf

Beziehung zwischen Produkt und Hersteller ist eine m:n Beziehung.

ein Produkt hat mehrere Hersteller
Bsp. Grafikkarte --> GeForce, ATI etc

ein Hersteller hat mehrere Produkte
Bsp. Medion–> PCs, Fernseher etc

vielleicht ist es so eher verständlich und mal unter dem Stichwort Normalisierung googeln bzw im Buch nachschlagen.

mfg

schmitti

Hi Ralf

Hersteller-Id und Lieferant-Id sind foreign keys auf die
jeweiligen Tabellen.

Logisch, ich Null! Danke schoen
Gruß Ralph

Beziehung zwischen Produkt und Hersteller ist eine m:n
Beziehung.

ein Produkt hat mehrere Hersteller
Bsp. Grafikkarte --> GeForce, ATI etc

ein Hersteller hat mehrere Produkte
Bsp. Medion–> PCs, Fernseher etc

Aber genau das ist eben nicht der Fall, sondern:
ein Produkt hat einen Hersteller
ein hersteller hat mehrere Produkte

ergo 1:n

trotzdem danke

Ralph

Aber genau das ist eben nicht der Fall, sondern:
ein Produkt hat einen Hersteller
ein hersteller hat mehrere Produkte

ergo 1:n

dann brauchst du ja die Lösung von drambeldier nicht umsetzen, den das ist die Auflösung der m:n Beziehung zwischen Produkt und Hersteller(Lieferant) über eine dritte Tabelle.

mfg

schmitti

dann brauchst du ja die Lösung von drambeldier nicht umsetzen,
den das ist die Auflösung der m:n Beziehung zwischen Produkt
und Hersteller(Lieferant) über eine dritte Tabelle.

Du sagst es. Er hat aber das magische Stichwort geliefert: Foreign Key Und weil ich doch voellig neu in Access bin, kam ich da nicht von alleine drauf.