Probleme mit Kardinalitäten
Horst
- datenbank
0 Lude0 Daniela Koller0 Horst0 Daniela Koller0 Horst
Hallo zusammen,
folgendes Konstrukt hatten wir heute in einer Vorlesung:
-------------- -----------
|Bestellkopf | | Produkt |
-------------- -----------
1 1
| |
| |
| |
0-x 0-1 <---- hier mein Problem
--------------
|Bestellzeile| <- hat u.a. das Attribut "Menge"
--------------
Ich verstehe die Beziehung "ein Produkt steht null- oder einmal
in der Tabelle Bestellzeile drin" nicht (Vermutlich ist schon die
Beschreibung der Beziehung falsch).
So hatte ich es bisher immer gelöst: Ein Produkt kann in mehrern
Bestellzeilen vorkommen (verschieden Menschen könnten das Produkt
gekauft haben), ich würde also eine "0-x" (CN) Beziehung dort
einsetzen. Mein Dozent ist der Meinung, dass man die Beziehungen
anders sieht: pro Bestellkopf kann in Bestellzeilen nur einmal
jedes Produkt auftauchen, kauft ein Mensch ein Produkt öfter wird
nur die Menge erhöht, deshalb die 0-1 (C) Beziehung.
Wie schlüsselt Ihr solche Beziehungen auf? und wie ist es richtig?
(letztes Jahr hat er es uns anders erklärt, dachte ich)
Mit Dank
Horst
Hi,
Ich verstehe die Beziehung "ein Produkt steht null- oder einmal
in der Tabelle Bestellzeile drin" nicht (Vermutlich ist schon die
Beschreibung der Beziehung falsch).
ich (hoffentlich) schon. Das nennt man eine "1:1-Beziehung", die NULL-Werte zulaesst. Eine Sache die in der Praxis zum Beispiel benoetigt wird, wenn Leasinganfragen gehalten werden, die Leasingvertraege werden sollen. Manche Anfragen werden nicht Vertraege, manche schon. Die, die Vertraege werden, benoetigen eine eindeutige Vertragsnummer. - Oder war ich zu konkret? ;-)
Bei "1:n"-Beziehungen wuerde man nicht sicherstellen, dass die Vertragsnummer, die in der "Verweistabelle" schlummert, nicht mehrfach vergeben wird.
Gruss,
Lude
Hi Horst
So hatte ich es bisher immer gelöst: Ein Produkt kann in mehrern
Bestellzeilen vorkommen (verschieden Menschen könnten das Produkt
gekauft haben), ich würde also eine "0-x" (CN) Beziehung dort
einsetzen. Mein Dozent ist der Meinung, dass man die Beziehungen
anders sieht: pro Bestellkopf kann in Bestellzeilen nur einmal
jedes Produkt auftauchen, kauft ein Mensch ein Produkt öfter wird
nur die Menge erhöht, deshalb die 0-1 (C) Beziehung.
Imho ist diese Aussage falsch, es geht immer nur um die direkte Beziehung zwischen 2 Tabellen, ohne eine dritte zu berücksichtigen. Ich bin also deiner Meinung, da gehört ein 0-n hin. Ich finde die Beziehung Bestellkopf <-> Bestellposten auch Quatsch, imho hat ein Bestellkopf in jedem Fall Bestellszeilen, sonst wird er nicht angelegt.
Gruss Daniela
Hi Daniel,
vielen Dank für Deine Antwort, werde meinem Prof nochmal ein wenig
auf den Zahn fühlen :o)
Gruß
Horst
Hi Horst
Hi Daniel,
Bitte vergesst doch nicht immer mein a, ich heisse Daniela.
*genervt weil es hier öfters vergessen wird*
Gruss Daniela
Hi Daniela :o)
sorry...
hatte es gelesen, aber dann unterwegs verloren :o)
Gruß
vom Hors ;o)