Veröffentlicht 20. November 20231 j Hallo , müsste nicht die Tabelle Teil eine 1:N Beziehung zu der Tabelle TeilGruppe haben?
20. November 20231 j So wie es in dem Bild dargestellt ist, ist die Beziehung richtig. Es kann mehrere Teile in der Teil Tabelle geben, die zu einer Gruppe in der TeilGruppe Tabelle gehören. Ein Primärschlüssel kann nie ein n sein, da er eindeutig sein muss. Bearbeitet 20. November 20231 j von Datawrapper
20. November 20231 j Autor vor 7 Minuten schrieb Datawrapper: So wie es in dem Bild dargestellt ist, ist die Beziehung richtig. Es kann mehrere Teile in der Teil Tabelle geben, die zu einer Gruppe in der TeilGruppe Tabelle gehören. Ein Primärschlüssel kann nie ein n sein, da er eindeutig sein muss. ok dann habe ich das falsch verstanden, danke. Was meinst du mit dass ein PK nie ein n sein kann? Bearbeitet 20. November 20231 j von rasenganIT
20. November 20231 j PK = Primary Key FK = Foreign Key Definitionen bitte mal selber nachschlagen. PK = ein-eindeutig, damit kann der PK niemals der N Teil einer 1:N Beziehung sein. Beispiel: Tab: Teil / PK = Gruppe_ID (mus ein-eindeutig sein, also darf jeweils nur 1mal vorkommen) Da aber in jeder Gruppe mehrere Teile enthalten sein können, also in der Tabelle Teil mehrere Teile der gleichen Gruppe zugeordnet sein können kann die TeilGruppe.Gruppe_ID mehrmals in der Teil.Gruppe_ID vorkommen. Damit ist Teil.Gruppe_ID nicht mehr eindeutig. und kann darum kein PK werden. Und um es schlimmer zu machen, nur für die Experten. Eine Beziehung TeilGruppe zu Teil wird nie als 1:n sondern immer als N:M dargestellt. Wer beantworten kann warum bekommt nen virtuellen Keks.
20. November 20231 j vor 36 Minuten schrieb Enno: Wer beantworten kann warum bekommt nen virtuellen Keks. Das wird gemacht, weil du dir mit dem oberen Datenmodell eine im Nachhinein nicht mehr änderbare Beschränkung einbaust. Und zwar kann mit dem obigen Modell ein Teil immer nur zu genau einer TeilGruppe gehören. Sollte es mal erforderlich sein, ein Teil zu mehreren TeilGruppen hinzuzufügen ist das mit dem Modell nicht möglich. Bei einer n:m Beziehung kannst du die einzelnen Teile zu mehreren TeilGruppen hinzufügen ohne Redundanzen zu erschaffen.
20. November 20231 j Sehr gute Antwort. Tasse Kaffe dazu? P.S. änderbar wäre die Beschränkung schon, nur mit viel Aufwand. Bearbeitet 20. November 20231 j von Enno
20. November 20231 j vor 8 Minuten schrieb Enno: P.S. änderbar wäre die Beschränkung schon, nur mit viel Aufwand. Du hast recht. Theoretisch ist es änderbar. Ein Datenbankmodell im Laufenden Betrieb zu ändern ist aber alles andere als einfach. Die ganzen Abhängigkeiten die entstehen müssen alle angepasst werden. Das können je nach Datenbank schonmal ein paar mehr werden
20. November 20231 j Als kurze Ergänzung: Denk immer daran, dass Kardinalitäten in Datenbank-Modellen immer aus zwei (!) Sätzen bestehen, die beide immer mit "1" beginnen. Wenn du diese Sätze formulierst, kannst du ausgehend von der Start-Tabelle das jeweilige Ergebnis an die andere Tabelle schreiben. So notierst du die Kardinalitäten im Diagramm. Obiges Beispiel: 1) Ein Teil gehört zu einer TeilGruppe. 2) Eine TeilGruppe kann mehrere Teile beinhalten. Aus dem ersten Satz schlussfolgerst du die "1" an der Tabelle TeilGruppe. Aus dem zweiten das "n" an der Tabelle Teil.
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.