Max1988: Relationenmodell

Hallo,
ich habe ein dickes Problem. Ich muss zu morgen ein ERM inclusive relationenmodell abgeben und komme bei der Überführung in ein Relationenmodell nicht weiter. Hoffentlich kann mir hier jemand helfen:
Folgendes Beispiel soll mein Problem verdeutlichen:
entität1:Person(<u>PersID</u>,name)
entität2:Autofahrt(<u>AutofahrtId</u>,Strecke)

beziehung zwischen den beiden(relationship-typ): fährt UND fährt mit.

Wie sieht für mein Beispiel das Relationenmodell aus?
hätte ich nur die Beziehung wär das kein Problem, Autofahrt könnte die PersID als Fremdschlüssel erben. Relationenmodell danach:

Autofahrt(<u>AutofahrtID</u>,Strecke,PersID)

so und wie bekomme ich jetzt den Beifahrer unter?
Das ist ja Quark:
Autofahrt(<u>AutofahrtID</u>,Strecke,PersID,PersID)

VG Max

  1. Hallo Max1988,

    so und wie bekomme ich jetzt den Beifahrer unter?

    Es ist nur ein Beifahrer?

    Autofahrt(<u>AutofahrtID</u>,Strecke,PersID,PersID)

    Dann wäre das genau richtig.

    Sind es mehrere, brauchst Du eine extra Zuordnungstabelle der Form:
    AutofahrtZuMitfahrer(AutofahrtID,PersID)

    Beantwortet das Deine Frage? Dieser "Trick" mit der Zuordnungstabelle ist eigentlich absolutes Basiswissen beim Entwurf von Datenbanken. Das braucht man eigentlich immer für n:m-Beziehungen.

    Grüße

    Daniel

    1. Hallo,

      danke für deine antwort, es ist nur ein beifahrer. Ich kann sowas modellieren:Autofahrt(<u>AutofahrtID</u>,Strecke,PersID,PersID)?
      Dann hätten ja in meiner tabelle autofahrt zwei Felder/Attribute den gleichen Namen, das geht doch net...

      MFG Max

      1. Hallo Max1988,

        Dann hätten ja in meiner tabelle autofahrt zwei Felder/Attribute den gleichen Namen, das geht doch net...

        Achso, ich dachte, das was Du da angibst, wären so eine Art Datentyp bzw Fremdschlüsselbeziehung. Du kannst den Spalten ja einfach verschiedene Namen geben. Ich würde die Spalten sowieso immer nach der Bedeutung, die sie in der entsprechenden Tabelle haben, benennen und nicht danach, was sie enthalten.
        Also etwa so (nach dem : steht der "Typ"):
        Autofahrt(<u>AutofahrtID</u>: int,Strecke: ...,Fahrer: PersID, Beifahrer: PersID)

        Grüße

        Daniel

        1. Hallo Daniel,

          nochmal danke für deinen Aufwand zu so später Stunde, es ging mir um die Überführung eines ERM in ein Relationenmodell. Die datentypen und wie die Datenbank letztlich aussehen soll ist mir schon völlig klar - nur das formale ist das Problem(muss ich aber leider abgeben).

          im ERM sind Beziehungen wie im ersten Thread dargestellt.
          entität1:Person(<u>PersID</u>,name)
          entität2:Autofahrt(<u>AutofahrtId</u>,Strecke)

          zwischen Person und Autofahrt bestehten die Relationshiptypen(Raute) "fährt" und "fährt mit"(eine Autofahrt hat genau eine Person als Fahrer und 0oder 1 Person als Mitfahrer). Und eigentlich wird ja der Primärschlüssel von Person als Fremdschlüssel in Autofahrt übernommen. Aber dann müsste ich ja hier 2mal PersID übernehmen, das geht aber nicht. Und meine Frage war wie ich das nun im Relationenmodell darstelle...hab mal was von Rollennamen gehört, hat das was damit zu tun?

          VG Max

          1. Hallo Max,

            Und eigentlich wird ja der Primärschlüssel von Person als Fremdschlüssel in Autofahrt übernommen. Aber dann müsste ich ja hier 2mal PersID übernehmen, das geht aber nicht.

            selbstverständlich geht das. Das ist das normalste von der Welt.

            Stell Dir vor, Du hast eine Entity Personen und eine weitere Entity Ehe.
            Wie willst Du das denn sonst lösen?

            Freundliche Grüße

            Vinzenz

            1. Hallo Vinzenz

              Und eigentlich wird ja der Primärschlüssel von Person als Fremdschlüssel in Autofahrt übernommen. Aber dann müsste ich ja hier 2mal PersID übernehmen, das geht aber nicht.

              selbstverständlich geht das. Das ist das normalste von der Welt.

              Stell Dir vor, Du hast eine Entity Personen und eine weitere Entity Ehe.
              Wie willst Du das denn sonst lösen?

              ja genau so, meine Frage ist ja nur nach der "Syntax" des Relationenmodells dafür. (Oder wo gebe ich dann die Spaltennamen im ERM an)

              MFG MAX

              1. hallo
                hier noch mal das bsp. für das ich das relationenmodell suche
                http://www.megaupload.com/de/?d=5RJQ7QQG

                danke für eure hilfe.

                mfg max

                1. Hallo max1988,

                  Da gibt es eine Beschreibung diverser Varianten:
                  http://de.wikipedia.org/wiki/Entity-Relationship-Modell#ER-Diagramme
                  Dort sieht man auch diverse Möglichkeiten, Rollenbeziehungen anzugeben.

                  Grüße

                  Daniel