Warum noch ein Access-Buch?
Für wen ist das Buch?
Jetzt bestellen
+ direkter Download des eBooks!
Nur EUR 59,95!
Fehler gefunden?
Bitte melden!
Wünsche an das Buch?
Her damit!
Was denken die Leser über dieses Buch?
Lesen Sie aktuelle Rezensionen!
Kapitel des noch nicht veröffentlichten Buchs zum Downloaden, Probelesen und Kommentieren
Beispieldatenbanken
Zusätzliches Material

Das Buch im HTML-Format

Für unbestimmte Zeit bieten Addison-Wesley und André Minhorst den kompletten Inhalt des Buchs als Download an. Schauen Sie rein und informieren Sie sich über den Inhalt! Und wenn Ihnen das Buch nützlich erscheint und Sie glauben, dass Sie etwas gelernt haben oder durch das Gelesene sogar etwas Zeit und somit Geld bei Ihrer Arbeit einsparen konnten, können Sie sich ja beim Autor und beim Verlag revanchieren - beispielsweise durch den Kauf dieses Buchs.

Am schönsten wäre es natürlich, wenn Sie das Buch direkt hier bestellen - Sie erhalten das Buch dann direkt vom Verlag, und der Autor und Verlag haben dann noch mehr davon, als wenn Sie es anderswo kaufen.

Danke für Ihr Interesse!

10.2.5 Löschen eines Index

10.2.6 Erstellen einer Beziehung

Um eine Beziehung zwischen zwei Tabellen herzustellen, verwenden Sie die folgende Routine.

Voraussetzung ist, dass das Fremdschlüsselfeld der Detailtabelle den gleichen Datentyp wie das Primärschlüsselfeld der Mastertabelle hat. Außerdem muss der Primärschlüssel der Mastertabelle eindeutig sein. Sind die Voraussetzungen erfüllt (und die angegebenen Tabellen beziehungsweise Felder vorhanden), legt die Routine die Beziehung aus Abbildung 10.3 an.

Wenn Sie zusätzlich Löschweitergabe oder Aktualisierungsweitergaben definieren möchten, müssen Sie die Eigenschaften DeleteRule und UpdateRule des key-Objekts mit den entsprechenden Werten bestücken. Mit der Konstanten adRICascade sorgen Sie für die Weitergabe der jeweiligen Aktion.

Public Sub BeziehungErstellen()

    Dim cat As ADOX.Catalog
    Dim tbl As ADOX.Table
    Dim key As ADOX.key

    Set cat = New ADOX.Catalog

    cat.ActiveConnection = CurrentProject.Connection

    'Tabelle mit dem Fremdschlüsselfeld festlegen
    Set tbl = cat.Tables("tblMitarbeiter")

    'Neuen Key instanzieren und Eigenschaften zuweisen
    Set key = New ADOX. key
    key.Name = "ForeignKey"
    key.Type = adKeyForeign

    'Tabelle mit Primärschlüssel festlegen
    key.RelatedTable = "tblUnternehmen"

    'Verknüpfungsfeld der Detailtabelle angeben
    key.Columns.Append "UnternehmenID"

    'Optional: Lösch- oder Aktualisierungsweitergabe
    key. DeleteRule = adRICascade
    key. UpdateRule = adRICascade

    'Verknüpfungsfeld der Mastertabelle angeben
    key.Columns("UnternehmenID").RelatedColumn = "UnternehmenID"

    'Key an die Keys-Auflistung anhängen
    tbl.keys.Append key

    Set key = Nothing
    Set tbl = Nothing
    Set cat = Nothing

End Sub

Listing 10.8: Anlegen einer Beziehung zwischen zwei Tabellen

Abbildung 10.3: Mit ADOX erstellte Beziehung

Nächster Abschnitt:

10.2.7 Löschen einer Beziehung

© 2006-2008 André Minhorst Alle Rechte vorbehalten.