 |
Formulare mit mehreren Tabellen verknüpfen
Ich möchte in einem Formular drei Tabellen ansprechen. Access soll in der ersten Tabelle die Firmendaten verwalten, in der zweiten die Ansprechpartner und in der dritten Telefonnummern. Zwischen diesen Tabellen existieren »1:N«-Beziehungen.
Zunächst definieren Sie drei Tabellen namens »Firma«, »Mitarbeiter« und »Kommunikation«. Die Primärschlüssel der Tabellen heißen jeweils »PK_Firma«, »PK_Mitarbeiter« und »PK_Kommunikation«. Erzeugen Sie zusätzlich in der Tabelle »Mitarbeiter« das Feld »FK_Firma« und in »Kommunikation« das Feld »FK_Mitarbeiter«. Das sind Fremdschlüssel, mit denen Sie die Tabellen später in Beziehung setzen. Wenn Sie für Ihre Primärschlüssel den Felddatentyp »AutoWert« und die Feldgröße »Long Integer« nutzen, müssen Ihre Fremdschlüssel vom Typ »Zahl« und der Größe »Long Integer« sein. Erzeugen Sie nun die »1:N«-Beziehungen zwischen »Firma« und »Mitarbeiter« sowie zwischen »Mitarbeiter« und »Kommunikation«. Dazu klicken Sie im Datenbankfenster auf der Registerkarte »Tabellen« mit der rechten Maustaste in einen freien Bereich. Im folgenden Menü rufen Sie »Beziehungen« auf und fügen über »Tabelle anzeigen« die drei gewünschten Tabellen hinzu. Access stellt nun im Fenster »Beziehungen« für jede Tabelle ein eigenes Objekt mit allen Attributen dar. Die Beziehung zwischen »Firma« und »Mitarbeiter« definieren Sie durch klicken auf den Primärschlüssel »PK_Firma«. Halten Sie die Maustaste fest, ziehen Sie sie auf den Fremdschlüssel »FK_Firma« der Tabelle »Mitarbeiter« und lassen Sie dann wieder los. Im folgenden Dialog »Beziehungen« sollten Sie die Optionen »Mit referentieller Integrität« sowie »Aktualisierungsweitergabe an ein Detailfeld« und »Löschweitergabe an Detaildatensatz« aktivieren. Bestätigen Sie die Angaben mit »Erstellen«. Erzeugen Sie die Beziehung zwischen »Mitarbeiter« und »Kommunikation« auf die gleiche Art. Nun sind die Vorbereitungen beendet, und Sie können zum Entwurf der Formulare übergehen. Generieren Sie zuerst auf die gewohnte Art ein Formular »frm-Kommunikation« für die Tabelle »Kommunikation«. Benutzen Sie dazu am besten den Assistenten. Jetzt editieren Sie das Formular »frm-Mitarbeiter« für »Mitarbeiter«. Benutzen Sie wieder den Assistenten und geben Sie am Ende an, dass Sie den Entwurf ändern möchten. Fügen Sie in der Entwurfsansicht des Formulars ein Objekt »Unterformular/-bericht« ein. Dabei unterstützt Sie wieder ein Assistent. Markieren Sie auf der ersten Seite des Assistenten die Option »Formulare« und wählen Sie den Eintrag »frmKommunikation« aus. Auf der zweiten Seite bestimmen Sie, über welche Felder Access die Formulare verbinden soll. Markieren Sie »Meine eigenen definieren« und wählen Sie in den Kombinationsfeldern der ersten Zeile unter »Formular-/Berichtsfelder« den Eintrag »PK_Mitarbeiter« und unter »Unterformular-/Unterberichtsfelder« den Eintrag »FK_Mitarbeiter«. Auf der letzten Seite geben Sie dem Unterformular einen Namen und generieren es endgültig mit »Fertigstellen« .Zuletzt erzeugen Sie für die Tabelle »Firma« das Formular »frmFirma«. Gehen Sie so vor wie beim Formular »frmMitarbeiter«, aber fügen Sie diesmal über ein Unterformular »frmMitarbeiter« ein und verknüpfen Sie die Formulare über die Felder »PK_Firma« und »FK_Firma«.
|
 |