mychastic: m-n Beziehung ...Bin ratlos!

Hallo,

ich habe folgendes Problem habe eine DB bekommen mit vielen Tabellen. Nun soll ich realiesieren, dass die Tabelle "Artikel" und die Tabelle "Lieferanten" miteinander verknüpft werden...und zwar so, dass ich einem Artikel mehrere Lieferanten zuweisen kann.

Ich habe nun schon 2 Tage versucht das hinzubekommen und ordentlich gelesen, aber leider nichts gefunden :(

Hoffe ich finde hier Hilfe.

  1. Ich habe nun schon 2 Tage versucht das hinzubekommen und ordentlich gelesen, aber leider nichts gefunden :(

    das problem scheint ein datenbankproblem zu sein, kein tabellenproblem - prinzipiell sollte da so aussehen:

    lieferanten
    id | name
     1 | foo
     2 | bar
     3 | baz

    artikel
    id | name
     1 | foofoo
     2 | barbaz
     3 | bazfoo
     4 | foobar
     5 | foobaz

    artikel_zu_lieferant
    artikel | lieferant
          1 | 2
          1 | 3
          2 | 1
          2 | 2
          2 | 3
          3 | 2
          4 | 2
          5 | 1

    wenn du nun alle lieferanten haben willst, die artikel 1 im programm haben, reicht folgende abfrage

    select lieferant from artikel_zu_lieferant where artikel = 1

    1. Sup!

      Jetzt würde mich noch interssieren, was der gute Mann zwei Tage lang gelesen hat. Spiegel Online? Mangas?

      *scnr*

      Gruesse,

      Bio

      --
      Never give up, never surrender!
      1. Sup!

        Jetzt würde mich noch interssieren, was der gute Mann zwei Tage lang gelesen hat. Spiegel Online? Mangas?

        *scnr*

        Gruesse,

        Bio

        Nein. PhP Tutorials etc aber ich habe irgendwie nicht die richtige Lösung gefunden.

        Also das Hauptproblem ist, dass ich den kompletten PHP Code vorliegen hab und das nun eben so ändern soll, dass man für einen Artikel mehrere Lieferanten angeben kann. Also habe ich eine Mehrfachauswahl eingefügt...da dies nun aber ein Array ist speichert er dies noch nicht. Da der Wert für den Lieferanten in der Tabelle "int" ist. Ich weiß nun nicht, wie ich es änder, dass man eben dieses Array speichern kann :(

        1. Mahlzeit mychastic,

          Nein. PhP Tutorials etc aber ich habe irgendwie nicht die richtige Lösung gefunden.

          Was sollten PHP-Tutorials auch bei deinem Datenbankstrukturproblem helfen?

          MfG,
          EKKi

          --
          sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
    2. Ich habe nun schon 2 Tage versucht das hinzubekommen und ordentlich gelesen, aber leider nichts gefunden :(

      das problem scheint ein datenbankproblem zu sein, kein tabellenproblem - prinzipiell sollte da so aussehen:

      lieferanten
      id | name
      1 | foo
      2 | bar
      3 | baz

      artikel
      id | name
      1 | foofoo
      2 | barbaz
      3 | bazfoo
      4 | foobar
      5 | foobaz

      artikel_zu_lieferant
      artikel | lieferant
            1 | 2
            1 | 3
            2 | 1
            2 | 2
            2 | 3
            3 | 2
            4 | 2
            5 | 1

      wenn du nun alle lieferanten haben willst, die artikel 1 im programm haben, reicht folgende abfrage

      select lieferant from artikel_zu_lieferant where artikel = 1

      Mh soweit so gut. Allerdings will es noch nicht so wie ich :(

      Also die Tabelle "Artikel" besteht aus der Artikel_ID, Name, usw. und die Tabelle "Lieferant" die Lieferant_ID, Name, Kurzname und in der Artikle_hat_Lieferant habe ich: ahd_id, artikel_id, lieferant_id

      Ist das soweit richtig?

      1. Mh soweit so gut. Allerdings will es noch nicht so wie ich :(

        das ist eine ungünstige fehlerbeschreibung ;)

        Artikle_hat_Lieferant habe ich: ahd_id, artikel_id, lieferant_id
        Ist das soweit richtig?

        im grunde ja - nur eine id in der n:m-tabelle ist meiner meinung nach nicht notwendig

      2. Hi!

        Mh soweit so gut. Allerdings will es noch nicht so wie ich :(

        Was bedeutet das?

        Artikle_hat_Lieferant habe ich: ahd_id, artikel_id, lieferant_id

        Die erste ID kann weg, Du hast mit:  artikel_id, lieferant_id
        bereits einen zusammengesetzten Primary Key].

        off:PP

        --
        "You know that place between sleep and awake, the place where you can still remember dreaming?" (Tinkerbell)