rasenganIT Geschrieben 20. November 2023 Teilen Geschrieben 20. November 2023 Hallo , müsste nicht die Tabelle Teil eine 1:N Beziehung zu der Tabelle TeilGruppe haben? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Datawrapper Geschrieben 20. November 2023 Teilen Geschrieben 20. November 2023 (bearbeitet) 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 2023 von Datawrapper Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
rasenganIT Geschrieben 20. November 2023 Autor Teilen Geschrieben 20. November 2023 (bearbeitet) 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 2023 von rasenganIT Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Enno Geschrieben 20. November 2023 Teilen Geschrieben 20. November 2023 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. rasenganIT und Datawrapper reagierten darauf 1 1 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Datawrapper Geschrieben 20. November 2023 Teilen Geschrieben 20. November 2023 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. Enno reagierte darauf 1 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Enno Geschrieben 20. November 2023 Teilen Geschrieben 20. November 2023 (bearbeitet) Sehr gute Antwort. Tasse Kaffe dazu? P.S. änderbar wäre die Beschränkung schon, nur mit viel Aufwand. Bearbeitet 20. November 2023 von Enno Datawrapper reagierte darauf 1 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Datawrapper Geschrieben 20. November 2023 Teilen Geschrieben 20. November 2023 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 Enno reagierte darauf 1 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
stefan.macke Geschrieben 20. November 2023 Teilen Geschrieben 20. November 2023 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. rasenganIT reagierte darauf 1 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.