Hallo zusammen,
habe mich frisch angemeldet und gleich zwei Fragen zu Datenbanken, die mir bisher nirgendwo beantwortet werden konnten. Ich hoffe mal, dass das hier richtig ist. Zwar hängen Datenbanken nicht zwingend mit Webanwendungen zusammen, aber da da meine Fragen reine Theorie sind, ist das egal.
Als erstes zum ER-Modell allgemein:
Ich habe mir Gedanken gemacht, ob man eine Beziehung zu 4 Entitys erstellen könnte (nur von der Theorie). Normal besteht ja eine Beziehung zu maximal 2 ganz selten auch zu 3 Entitys.
Ich habe einfach aus einer bereits existierende Übersicht, die 3 Entitys hat, das hier genommen und noch das Entity Bar hinzugefügt. Das Bild habe ich in Paint gemacht, deswegen siehts auch etwas speziell aus
Die unterstrichenen Attribute, sind gemäß Norm natürlich Primary Keys (PK). Ich nehme der Einfachheit halber an, dass der Inhalt jedes PK-Attributs nur einmal vorkommt, damit keine künstlichen Keys vergeben werden müssen. Das sollte aber wohl nicht von besonderer Bedeutung sein.
Es läuft so ab: Die Rolle Empfehler, welche einen bestimmten Namen und ein bestimmtes Alter hat, empfiehlt der Rolle Koster, die auch einen bestimmten Namen und ein bestimmtes Alter hat, einen Cocktail, welcher auch wiederum einen bestimmten Namen und auch einen bestimmten Alkoholgehalt hat. Dazu gibt er auch noch die Bar (die nach seiner Meinung den Cocktail am besten macht).
Es herrschen überall N:N-Beziehungen. Der Betrachter möchte gerne wissen, welcher Cocktail von wem wem empfohlen wurde und auch, welche Bar der Empfehler mitempfohlen hat.
Nun stellt sich mir die Frage, ob man das ganze noch vereinfachen und auflösen kann, so dass z.B. eine zweier- und eine Dreierbeziehung entstehen würde.
So, die Frage war schon ziemlich lang
Jetzt zur zweiten Frage:
Es geht um ein relationales Modell. Es sind Attribute gegeben, welche funktionale Beziehungen untereinander haben und nach der 3. Normalform entsprechend in verschiedenen Tabellen untergebracht werden.
Hier die Vorgabe:
R{A,B,C,D,E} mit den funktionalen Abhängigkeiten
A->{B,C},
{C,D}->E,
B->D,
E->A
Ich habe sogar schon die Lösung:
R1{A,B,C,E}
R2{B,D}
FK:B{R1}->B{R2}
Nun verstehe ich an dem ganzen aber nicht, wieso man dies in zwei Tabellen und nicht in drei macht (E noch auslagern), weil es bestehen ja noch funktionelle Abhängigkeiten?
Das sind jetzt enorm herausfordernde Fragen, aber ich hoffe mal, dass mir da jemand weiterhelfen kann, sonst muss ich nämlich in einem Datenbankforum nachfragen
Schon einmal vielen Dank für die Antworten!
LG FKFK
habe mich frisch angemeldet und gleich zwei Fragen zu Datenbanken, die mir bisher nirgendwo beantwortet werden konnten. Ich hoffe mal, dass das hier richtig ist. Zwar hängen Datenbanken nicht zwingend mit Webanwendungen zusammen, aber da da meine Fragen reine Theorie sind, ist das egal.
Als erstes zum ER-Modell allgemein:
Ich habe mir Gedanken gemacht, ob man eine Beziehung zu 4 Entitys erstellen könnte (nur von der Theorie). Normal besteht ja eine Beziehung zu maximal 2 ganz selten auch zu 3 Entitys.
Ich habe einfach aus einer bereits existierende Übersicht, die 3 Entitys hat, das hier genommen und noch das Entity Bar hinzugefügt. Das Bild habe ich in Paint gemacht, deswegen siehts auch etwas speziell aus
Die unterstrichenen Attribute, sind gemäß Norm natürlich Primary Keys (PK). Ich nehme der Einfachheit halber an, dass der Inhalt jedes PK-Attributs nur einmal vorkommt, damit keine künstlichen Keys vergeben werden müssen. Das sollte aber wohl nicht von besonderer Bedeutung sein.
Es läuft so ab: Die Rolle Empfehler, welche einen bestimmten Namen und ein bestimmtes Alter hat, empfiehlt der Rolle Koster, die auch einen bestimmten Namen und ein bestimmtes Alter hat, einen Cocktail, welcher auch wiederum einen bestimmten Namen und auch einen bestimmten Alkoholgehalt hat. Dazu gibt er auch noch die Bar (die nach seiner Meinung den Cocktail am besten macht).
Es herrschen überall N:N-Beziehungen. Der Betrachter möchte gerne wissen, welcher Cocktail von wem wem empfohlen wurde und auch, welche Bar der Empfehler mitempfohlen hat.
Nun stellt sich mir die Frage, ob man das ganze noch vereinfachen und auflösen kann, so dass z.B. eine zweier- und eine Dreierbeziehung entstehen würde.
So, die Frage war schon ziemlich lang
Jetzt zur zweiten Frage:
Es geht um ein relationales Modell. Es sind Attribute gegeben, welche funktionale Beziehungen untereinander haben und nach der 3. Normalform entsprechend in verschiedenen Tabellen untergebracht werden.
Hier die Vorgabe:
R{A,B,C,D,E} mit den funktionalen Abhängigkeiten
A->{B,C},
{C,D}->E,
B->D,
E->A
Ich habe sogar schon die Lösung:
R1{A,B,C,E}
R2{B,D}
FK:B{R1}->B{R2}
Nun verstehe ich an dem ganzen aber nicht, wieso man dies in zwei Tabellen und nicht in drei macht (E noch auslagern), weil es bestehen ja noch funktionelle Abhängigkeiten?
Das sind jetzt enorm herausfordernde Fragen, aber ich hoffe mal, dass mir da jemand weiterhelfen kann, sonst muss ich nämlich in einem Datenbankforum nachfragen
Schon einmal vielen Dank für die Antworten!
LG FKFK