1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  2. Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, Oracle, Sql-Server, Postgres, Access uvm
    Information ausblenden

Beziehungen zwischen Relationen (Beziehung auf sich selbst?)

Dieses Thema im Forum "Datenmodellierung, Datenbank-Design" wurde erstellt von Batzi84, 25 Juli 2011.

  1. Batzi84

    Batzi84 Neuer Benutzer

    Hallo,

    ich bin neu hier und auch was Datenbanken angeht noch nicht ganz so fit.
    Ich erstelle gerade zu Übungszwecken eine Datenbank, die Arzneimittel verwaltet und komm nicht weiter.

    Ich habe eine Relation Arzneimittel: MittelID (= Primärschlüssel) , weitere Eigenschaften...
    Relation Vergleichsmittel: ID (= Primärschlüssel) , MittelID (Fremdschlüssel auf Relation Arzneimittel) , VergleichsmittelID (soll sich auch auf irgendeine MittelID aus Arzneimittel beziehen!)

    so, in der Relation Arzneimittel werden alle Daten zu einem Medikament gespeichert.
    Jetzt soll aber auch zu jeder MittelID alle Medikamente gespeichert werden, die diesem Medikament ähnlich sind. Also diese "ähnlichen" sind auch in der Relation Arzneimittel aufgeführt. Ich brauche also eine Beziehung zwischen den Relationen Arzneimittel und Vergleichsmittel. Aber wenn ich da einen Fremdschlüssel von VergleichsID auf MittelID mach, geht das nicht. Das ist ja quasi eine Fremdschlüsselbeziehung zu sich selbst. Aber wie realisiere ich das?

    Ich hoffe ihr versteht was ich meine.
    Danke schon mal
     
  2. ukulele

    ukulele Datenbank-Guru

    Arzneimittel ist zunächst mal keine Relation sondern eine Entität die als Tabelle abgebildet wird (Primärschlüssel ist MittelID). Da jedes Mittel Ähnlichkeiten mit n weiteren Mitteln haben kann (genauso umgekehrt) hast du eine n:m Relation / Beziehung von der Entität auf sich selbst.

    Um eine n:m Relation abbilden zu können brauchst du zwigend eine Hilfstabelle, ein Fremdschlüssel in der Haupttabelle taugt nur für 1:n Relationen.
    In der Hilfstabelle hast du dann deine Fremdschlüssel stehen und zwar zwei, jeder zeigt auf eine MittelID.

    Wenn zwischen zwei unterschiedlichen Mitteln maximal eine Ähnlichkeit geführt werden soll, können diese beiden Fremdschlüssel zusammen den Primärschlüssel der Hilfstabelle bilden (in der Theorie...).
     
    Walter gefällt das.
Die Seite wird geladen...

Diese Seite empfehlen