Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Datenmodellierung 1:n, m:n

Begonnen von gopper0815, Januar 23, 2011, 18:07:04

⏪ vorheriges - nächstes ⏩

gopper0815

Hallo,

ich stehe scheinbar vor einem Logikproblem. Ich versuche gerade für eine Datenbank eine Datenmodellierung. Nur komm ich nur bei der Satzbildung immer auf eine m:n Beziehung.

Beispiel:

Ein Kunde stellt einen oder mehrere Kundenaufträge.

Gegendarstellung:

Ein Kundenauftrag gehört zu einem oder mehreren Kunden.

anderes Beispiel:

Ein Hund nimmt an einer Hundeschulung teil (den Hundeführer lass ich jetzt mal ausser Acht)

Gegendarstellung:

an einer Hundeschulung nimmt ein oder meherere Hunde teil.

Demnach hab ich bei den beiden Beispielen die Entitäten Kunde, Kundenauftrag, Hundeschulung und Hund

Die Relationen zueinander sind nach meiner Auffassung immer m:n

Wo ist denn mein Denkfehler

DF6GL

Hallo,

es fehlen die Entitäten "Auftrag" ,  bzw. "Schulung"


Kunde  -- 1:n  --  Kundenauftrag  -- n:1 --  Auftrag

MzKlMu

Hallo,
ZitatEin Kundenauftrag gehört zu einem oder mehreren Kunden.
das bezweifle ich auch, ein Auftrag gehört zu einem Kunden, demnach ist das 1:n
Ein Kunde (1) mehrere Aufträge (n), aber nicht umgekehrt.
Gruß Klaus

gopper0815

Aber ein Kunde kann doch mehrere Aufträge erteilen, dem nach heißt es doch dann:

Ein Auftrag wird von einem (der Kunde erteilt einen Auftrag) oder mehreren KUnden (der Kunde vergibt einen weiteren Auftrag) erteilt

Ich denk da irgendwie falsch

MzKlMu

#4
Hallo,
Ein Kunde mehrere Aufträge, aber der gleiche Auftrag kann nicht unterschiedlichen Kunden zugeordnet werden.
Die Beziehung Kunde Auftrag ist 1:n und nicht n:m.

Anbei mal ein Beziehungsbild. Die Tabelle Bestellungen wäre der Auftrag.



[Anhang gelöscht durch Administrator]
Gruß Klaus

gopper0815

#5
Ok, so langsam glaub ich, komm ich dahinter. Demnach steht z.B. die Entität Person mit einer 1:n Beziehung zur Entität Titel.

Eine Person kann mehrere Titel haben aber ein Titel gehört zu einer Person

kann man das so sagen?

Ist es eigentlich ein großes Problem, wenn ich mal wieder verquert denke und statt einer 1:n eine m:n Beziehung umsetze? Oder verbraucht das nur mehr Speicher?

MzKlMu

#6
Hallo,
ZitatEine Person kann mehrere Titel haben aber ein Titel gehört zu einer Person
Der Satz ist ein Widerspruch in sich, lies diesen noch mal.
Das Beispiel mit dem Titel war jetzt wieder schlecht, eine Person kann z.B. 2 Titel haben, z.B. Prof. Dr. dann wäre es ganau genommen n:m mit einer Zwischentabelle für die Titelzuordnung.
In der Praxis würde man das aber nicht so machen und die kombinierten Titel in einem Feld erfassen, dann hast Du wieder 1:n.
ZitatIst es eigentlich ein großes Problem, wenn ich mal wieder verquert denke und statt einer 1:n eine m:n Beziehung umsetze?
Ja, das ist ein großes Problem und solltest Du durch ein sorgfältig überlegtes Datenmodell unbedingt vermeiden. Soche Strukturänderungen nachträglich machen in der Regel jede Menge Arbeit. Mit Speicherplatz hat das nichts zu tun.
Gruß Klaus

gopper0815

Stimmt, nach mehrmaligen lesen hab ich es auch gesehen. Ich seh schon, das wird noch ein hartes Stück arbeit.