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!

9.6.8 Löschen eines Index

9.6.9 Erstellen einer Beziehung

Das letzte fehlende Element zur Erstellung kompletter Datenmodelle per DAO ist die Methode CreateRelation zum Erstellen von Beziehungen zwischen zwei Tabellen.

Das nachfolgende Beispiel erstellt eine Beziehung zwischen den beiden Tabellen tblMitarbeiter und tblUnternehmen. Die Beziehung soll über das Feld UnternehmenID hergestellt werden, das in der Tabelle tblUnternehmen als Primärschlüsselfeld mit dem Datentyp Long und in der Tabelle tblMitarbeiter als einfaches Long-Feld vorhanden ist.

Neben den beteiligten Tabellen und Feldern ist die Art der Beziehung sehr wichtig. Tabelle 9.3 zeigt alle möglichen Beziehungsarten. Standardmäßig legt die CreateRelation-Methode eine Beziehung mit referentieller Integrität an - dies entspricht dem Wert 0 für die Eigenschaft Attributes des Relation-Objekts. Die eigentümlichen Zahlenwerte der Konstanten für diese Eigenschaft rühren daher, dass man die Konstanten miteinander kombinieren können soll. Wenn Sie also etwa eine Beziehung mit referentieller Integrität als LEFT JOIN mit Aktualisierungs- und Löschweitergabe festlegen möchten, addieren Sie die Werte der einzelnen Konstanten in einer boolschen Operation - also 0 Or 256 Or 4096 Or 16777216. Sie können diesen Ausdruck als Wert der Eigenschaft Attributes eintragen oder auch vorher die Summe berechnen.

Die folgende Routine erstellt die Beziehung aus Abbildung 9.9.

Public Sub BeziehungErstellen()

    Dim db As DAO.Database
    Dim rel As DAO. Relation
    Dim fld As DAO.Field

    Set db = CurrentDb

    'Erstellen der Beziehung
    Set rel = db. CreateRelation()

    'Zuweisen der benötigten Informationen:
    'Name der Beziehung
    rel. Name = "relMitarbeiterUnternehmen"

    'Name der Tabelle mit dem Fremdschlüsselfeld
    rel. ForeignTable = "tblMitarbeiter"

     'Name der Tabelle mit dem Primärschlüssel
    rel. Table = "tblUnternehmen"

    'Typ der Beziehung
    rel. Attributes = 0

    'Feld, über das die Beziehung hergestellt werden soll
    Set fld = rel.CreateField("UnternehmenID", dbLong)

    'Name des Feldes in der Detailtabelle
    fld.ForeignName = "UnternehmenID"

    'Name des Feldes in der Mastertabelle
    fld.Name = "UnternehmenID"

    'Anhängen des Feldes an die Fields-Auflistung der Beziehung
    rel.Fields.Append fld

    'Anhängen der Beziehung an die Relations-Auflistung der Datenbank
    db.Relations.Append rel

    Set rel = Nothing
    Set db = Nothing

End Sub

Listing 9.15: Herstellen einer Beziehung zwischen zwei Tabellen

Konstante Zahlenwert Bedeutung
dbRelationUnique 1 1:1-Beziehung
dbRelationDontEnforce 2 Die Beziehung wird nicht erzwungen (keine referentielle Integrität).
dbRelationInherited 4 Die Beziehung besteht in Datenbanken, die zwei verknüpfte Tabellen enthalten.
dbRelationUpdateCascade 256 Aktualisierungsweitergabe
dbRelationDeleteCascade 4096 Löschweitergabe
dbRelationLeft 16777216 Nur in Microsoft Access. Erstellt ein LEFT JOIN zwischen den Tabellen.
dbRelationRight 33554432 Nur in Microsoft Access. Erstellt ein RIGHT JOIN zwischen den Tabellen.

Tabelle 9.3: Konstanten, Zahlenwerte und Bedeutung für die Eigenschaft Attributes beim Anlegen einer Beziehung

Abbildung 9.9: Diese Beziehung wurde mit der Prozedur aus Listing 10.15 angelegt

Nächster Abschnitt:

9.6.10 Löschen einer Beziehung

© 2006-2008 André Minhorst Alle Rechte vorbehalten.