[SQL] Veknüpfung zwei Tabelle <-> eine Tabelle

Dieses Thema im Forum "Webentwicklung" wurde erstellt von Sque, 6. Februar 2013 .

Schlagworte:
  1. 6. Februar 2013
    Veknüpfung zwei Tabelle <-> eine Tabelle

    Hallo zusammen,

    folgendes szenario:

    ich habe eine tabelle kunde, eine tabelle lieferant und eine tabelle ansprechpartner.

    Nun kann es zu jedem Kunden und jedem Lieferanten beliebig viele Ansprechpartner geben und zu jedem Ansprechpartner nur eine Firma 1:n das ist klar.

    Wenn es nun so wäre dass ein Ansprechpartner entweder zu einem Kunden oder zu einem Lieferanten gehört würde ich die ansprechpartner tabelle in zwei aufteilen und jeweils eine 1:n beziehung zu der entsprechenden kunde oder lieferant tabelle.

    Was mach ich aber wenn eine Firma sowohl kunde als auch lieferant sein kann und zufällig der ansprechparnter in sachen Kunde als auch der in sachen lieferant derselbe ist?

    Wenn ich dann ansprechpartner aufteile habe ich redundanzen, da ich in diesem fall ja die person in beide tabellen eintragen muss, deshalb muss ich ja irgendwie die tabelle ansprechpartner mit beiden tabellen kunde und lieferant verknüpfen, aber nicht n:m was ja einfach wäre sondern eben 1:n. Wie kann ich das machen?

    ps: ein datensatz kunde bzw. lieferant soll dann im endeffekt als information in einem auftrag hinterlegt werden --> n:1

    Danke und sorry für den langen text und danke schonmal für die hilfe.
    mfg sque
     
  2. 10. Februar 2013
    Zuletzt von einem Moderator bearbeitet: 14. April 2017
    AW: Veknüpfung zwei Tabelle <-> eine Tabelle

    Würde sagen du musst dich für eins von beiden Entscheiden
    - Redundanzen in den Ansprechpartner Tabellen.
    - m:n Beziehung obwohl es eigentlich eine 1:n Verknüpfung ist.

    Ich denke die letztere ist dennoch die sauberere Lösung, da du ja zum Beispiel ein UNIQUE Index auf den Fremdschlüssel "ansprechpartner_id" setzen kannst.
    Bild
     
  3. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.