Access-o-Mania

Access-Forum (Deutsch/German) => Access-Hilfe => Thema gestartet von: girly05 am März 18, 2015, 12:34:06

Titel: m:n-Beziehung
Beitrag von: girly05 am März 18, 2015, 12:34:06
Hallo, bitte nicht die Augen verdrehen!
in meiner Datenbank taucht der Herr Schneider mit 3 Telefonnummern und 2 eMailadressen in einer einzigen Tabelle auf. Diesen Fehler möchte ich nun korrigieren, d.h. es wird 2 weitere Tabellen für Auflösung dieser m:n-Beziehung geben (siehe Beispiel). Der Herr Schneider hat mehrere Aufgabengebiete, wobei er pro Projekt ein Gebiet davon ausfüllt. Wo bringe ich diese Information unter und was mache ich, wenn es noch einen weiteren Herr Schneider mit anderen Telefonnummern gibt? Seht euch bitte dazu meine Testdatenbank an, Eintragungen insbesondere im Beziehungsfenster wären sehr hilfreich, ich steh da wirklich auf dem Schlauch. Vielen Dank schonmal.
Liebe Grüße, Girly
Titel: Re: m:n-Beziehung
Beitrag von: girly05 am März 19, 2015, 09:15:23
Hi, ich nochmal. Wahrscheinlich denke ich falsch. Wie verarbeitet Ihr die Kontaktdaten, wenn mehrere Telefon- und/oder Maildaten pro Person vorhanden sind? Kommen diese Daten dann in zusätzliche Tabellen nach dem Motto tblTelefon1, tblTelefon2 usw.? Zumal dieser eine Bearbeiter je nach Projekt verschiedene Aufgaben hat und ein anderer Bearbeiter denselben Nachnamen (Vorname unbekannt) hat.
Liebe Grüße, Girly
Titel: Re: m:n-Beziehung
Beitrag von: el_gomero am März 19, 2015, 10:23:10
Hallo,

alles wo eine Nummer angehängt wird
Zitat
...  tblTelefon1, tblTelefon2 ...
schreit nach Normalisierung.

Die Kontaktarten (Tel, Mobil, email usw) gehören in eine Tabelle und die Zugangsdaten (Tel-Nr, Handy-Nr, mail-Adresse usw) in eine weitere. Über die ID werden die Tabellen verbunden und Kontaktart korrespondiert mit der Personentabelle. Damit kannst du alles abbilden, auch wenn eine Person mehrere Telefonnummern, mail-adressen und sonstwas hat.

hth
Titel: Re: m:n-Beziehung
Beitrag von: girly05 am März 19, 2015, 19:36:39
Danke el_gomero für Dein Feedback.
Ich hab jetzt die Tabellenstruktur geändert und als Bild angehängt. Ist das so Ok oder verstecken sich darin noch Fehler?
Wie erhalte ich jetzt den Zusammenhang, daß der Herr Schneider im Projekt 1 die Aufgabe 1 erfüllt und im Projekt 2 die Aufgabe 2?
Liebe Grüße, Girly
Titel: Re: m:n-Beziehung
Beitrag von: MzKlMu am März 19, 2015, 19:44:58
Hallo,
die Tabelle "tblNachname" ist übertrieben normalisiert. Den Nachnamen kannst Du direkt in der Tabelle "tblBearbeiter" packen.

Die Tabelle "tblKontaktinhalte" scheint mir auch überflüssig. Kontaktinhalt direkt in die Tabelle "tblKontakte".

Oder beschreibe mal die Inhalte.

ZitatWie erhalte ich jetzt den Zusammenhang, daß der Herr Schneider im Projekt 1 die Aufgabe 1 erfüllt und im Projekt 2 die Aufgabe 2?
mit diesen Beziehungen gar nicht. Wenn der Barbeiter der Aufgaben am Projekt hängt, ist die Tabelle "tblBearbeiter2 Aufgaben nicht notwendig und der Fremdschlüssel "AufgabenID_Ref" gehört zusätzlich in die Tabelle "tblProjektBearbeiter", um die Aufgaben einem Projekt und einem Bearbeiter zuordnen zu können.
Titel: Re: m:n-Beziehung
Beitrag von: girly05 am März 19, 2015, 21:05:44
Hallo MzKiMu,
die Nachnamen dachte ich in eine extra Tabelle, weil es ja bestimmte Namen gibt, die häufiger vorhanden sind, z.B. Schneider, Müller o.ä.
Die Kontaktinhalte sind z.B. TelefonNr, FaxNr usw., wobei sich oftmals mehrere Bearbeiter eine FaxNr teilen. Wo beginnt eine übertriebene Normalisierung?
Es gibt Projekte, wo der Herr Schneider mehrere Aufgaben erfüllt und andere Projekte, wo er nur eine Aufgabe hat. Deshalb die m:n-Tabelle tblProjekteBearbeiter.
Der Eintrag AufgabenID_Ref in der tblBearbeiter ist bereits gelöscht.
Liebe Grüße, Girly
Titel: Re: m:n-Beziehung
Beitrag von: MzKlMu am März 19, 2015, 23:35:36
Hallo,
Zitatdie Nachnamen dachte ich in eine extra Tabelle, weil es ja bestimmte Namen gibt, die häufiger vorhanden sind, z.B. Schneider, Müller o.ä.
das ist für mich übertrieben. Den Aufwand für die Nachnamen eine extra Tabelle zu führen würde ich nicht treiben.

ZitatDer Eintrag AufgabenID_Ref in der tblBearbeiter ist bereits gelöscht.
Du kannst auch die Tabelle löschen. Da ein Bezug zum Projekt erforderlich ist, der aber nicht da ist. Also Tabelle raus und Fremdschlüssel Aufgaben in die Tabelle "tblProjekteBearbeiter". Und dann wäre ein sinnvoller Name ""tblProjekteAufgabenBearbeiter", oder kürzer "tblProjAufgBearb".

ZitatDie Kontaktinhalte sind z.B. TelefonNr, FaxNr usw.,
Die Tabelle brauchst Du nicht. Wie bereits gesagt gehört der Kontaktinhalt direkt in die Tabelle "tblKontakte". "tblKontaktInhalte" kannst Du ersatzlos löschen.
Titel: Re: m:n-Beziehung
Beitrag von: girly05 am März 20, 2015, 10:26:31
Hallo MzKIMu,
danke für Deine Hilfe. ich hab das ganze jetzt mal geändert, muß aber gestehen, daß ich noch nicht richtig dahintersteige. Vielleicht am Wochenende. Sollte ich in der tblProjekteBearbeiterAufgaben einen Index über die 3 Fremdschlüssel erstellen?
Liebe Grüße, Girly
Titel: Re: m:n-Beziehung
Beitrag von: MzKlMu am März 20, 2015, 10:33:50
Hallo,
die Beziehung zwischen Bearbeiter und Kontakt ist falsch rum, siehe Bild.
KontakID_Ref dann löschen.
Titel: Re: m:n-Beziehung
Beitrag von: girly05 am März 20, 2015, 11:39:23
Danke, ich glaube mir geht langsam ein Licht auf.
Man steh ich diesbezüglich auf der Leitung! Wie sieht das mit dem Index aus?
Liebe Grüße, Girly
Titel: Re: m:n-Beziehung
Beitrag von: MzKlMu am März 21, 2015, 18:44:22
Hallo,
ja, das scheint so zu passen.
Das mit dem Index kannst Du machen. Aber nicht als Primärschlüssel (der bleibt) sondern als zusammengesetzter eindeutiger Index über die 3 Fremdschlüsselfelder.
Titel: Re: m:n-Beziehung
Beitrag von: girly05 am März 23, 2015, 11:17:55
Hallo Klaus,
danke für Deine große Hilfe :)! Ich wurstel jetzt mal wieder allein weiter, bis zum nächsten Mal.
Gibt es hier im Forum eigentlich einen Danke-Button?
Liebe Grüße, Girly
Titel: Re: m:n-Beziehung
Beitrag von: MaggieMay am März 23, 2015, 23:26:46
Hallo,
ZitatGibt es hier im Forum eigentlich einen Danke-Button?
Ja, den gibt es und er dürfte auch nicht allzu schwer zu finden sein.
Titel: Re: m:n-Beziehung
Beitrag von: girly05 am März 24, 2015, 10:05:45
Hallo MaggieMay,
sorry für meine Blindheit!!!
Nichts für ungut, auch bescheuerte Frage können nett beantwortet werden
Liebe Grüße, Girly
Titel: Re: m:n-Beziehung
Beitrag von: MaggieMay am März 24, 2015, 18:20:00
Ok, ich hätte einen Screenshot mit einem dickel Kringel hochladen können,
aber nun hast du ihn ja auch so gefunden. ;-)
War durchaus nicht unfreundlich gemeint.