Datenbankverknüpfungstypen

Verknüpfungen sind grundlegende Funktionen von Datenbanken, mit denen Sie die Inhalte von zwei verschiedenen Tabellen und/oder Datenbanken in einer einzigen Ansicht zusammenzuführen, die auf gemeinsamen Feldern beruht, d. h. auf der Verknüpfungsbedingung. Weitere Informationen finden Sie unter Informationen über Tabellen- und Datenbankverknüpfungen.

Wenn Sie Daten aus mehreren Tabellen und/oder mehreren Datenbanken in Ihrem Dokument verwenden, sind diese mittels einer der unterstützten Datenbankverknüpfungstypen zu verbinden.

Nachstehend finden Sie Beispieltabellen, auf die in den Beispielen für die verschiedenen Verknüpfungstypen, die von BarTender unterstützt werden, Bezug genommen wird. In Tabelle A sind Mitarbeiter und ihre Abteilungskennungen (IDs) aufgelistet und in Tabelle B die Abteilungsnamen und die Abteilungskennungen. Das gemeinsame Feld der Tabellen, das als Verknüpfungsbedingung genutzt wird, ist „Abteilungs-ID“.

Tabelle A:

Vorname

Abteilungs-ID

Jochen

31

Julianne

33

Markus

33

Maria

34

Dieter

34

Doris

NULL

Tabelle B:

Abteilungs-ID

Abteilungsname

31

Vertrieb

33

Technik

34

Büro

35

Marketing

BarTender unterstützt die folgenden Verknüpfungstypen für eine Verknüpfung mehrerer Datenbanken.

Im Datenbank-Setup-Assistenten sind die verfügbaren Verknüpfungstypen auf die vom Datenbankanbieter unterstützten Verknüpfungen beschränkt. Wenn Sie beispielsweise einen Datenbank-Verknüpfer für eine OLEDB-Datenbank erstellen, steht ein einzelner, innerer Verknüpfungstyp zur Verfügung. Um diese Einschränkung zu umgehen, können Sie für jede gewünschte Tabelle eine eigene Datenbankverbindung erstellen und dann die Verknüpfung auf der Seite Verknüpfung mehrerer Datenbanken des Dialogfelds Datenbank-Setup erstellen.

GeschlossenInnere Verknüpfung

Innere Verknüpfung ist ein häufig verwendeter Verknüpfungsbefehl, der oftmals als Standardverknüpfungstyp behandelt wird. Bei einer inneren Verknüpfung ergeben sich neue Resultate über die Rückmeldung und Kombination aller Zeilen aus den angegebenen Tabellen, die übereinstimmende Werte mit den Verknüpfungsfeldern aufweisen, die Sie angegeben haben. Wenn es zwischen einer Zeile in Tabelle A und einer Zeile in Tabelle B keine Übereinstimmungen gibt, wird diese Zeile nicht in das Ergebnis einbezogen.

In unseren Beispieltabellen führt eine innere Verknüpfung anhand von „Abteilungs-ID“ als Verknüpfungsbedingung zu folgendem Ergebnis:

Vorname

Abteilungs-ID

Abteilungsname

Jochen

31

Vertrieb

Julianne

33

Technik

Markus

33

Technik

Maria

34

Büro

Dieter

34

Büro

Doris erscheint nicht in der resultierenden Tabelle der inneren Verknüpfung, weil ihre Abteilungskennung in Tabelle A den Wert NULL aufweist. Wenn Doris einer Abteilungskennung zugeordnet wäre, die in Tabelle B nicht aufgeführt ist, würde sie ebenfalls nicht erscheinen, da keine entsprechende Zeile für die Zuordnung vorhanden wäre.

NULL-Werte werden anders verarbeitet als andere Werte und sind nicht mit einem Wert 0 (null) und auch nicht mit einem anderen NULL-Wert vergleichbar. Aus diesem Grund kann eine innere Verknüpfung keine Zeilen zurückmelden, die einen NULL-Wert in einem Feld enthalten, das in der Verknüpfungsbedingung verwendet wird, weil kein entsprechender Feldwert vorhanden ist.

GeschlossenLinke äußere Verknüpfung

Eine linke äußere Verknüpfung unterscheidet sich von einer inneren Verknüpfung dadurch, dass sie alle Zeilen der linken Tabelle (Tabelle A) zurückmeldet, auch wenn es in der rechten Tabelle (Tabelle B) keine passende Zeile gibt. Die Zeilen der linken Tabelle, denen in der rechten Tabelle keine passende Zeile entspricht, werden im Verknüpfungsergebnis mit NULL-Werten aufgelistet, was darauf hinweist, dass es in der rechten Tabelle keine entsprechende Zeile gibt. In diesem Beispiel werden im Ergebnis alle Mitarbeiter aufgelistet, auch wenn ihnen keine Abteilung zugeordnet wurde, wie bei „Doris“ in der folgenden Tabelle.

Vorname

Abteilungs-ID

Abteilungsname

Jochen

31

Vertrieb

Julianne

33

Technik

Markus

33

Technik

Maria

34

Büro

Dieter

34

Büro

Doris

NULL

NULL

GeschlossenRechte äußere Verknüpfung

Bei der rechten äußeren Verknüpfung verhält es sich genauso wie bei linken äußeren Verknüpfungen, nur in umgekehrter Richtung, d. h. für alle Einträge in der rechten Tabelle (Tabelle B) werden Ergebnisse zurückgemeldet, auch wenn diese keinen Zeilen in der linken Tabelle (Tabelle A) entsprechen. In diesem Beispiel werden im Ergebnis alle Abteilungen aufgelistet, auch wenn der Abteilung keine Mitarbeiter zugeordnet sind, wie dies bei der Abteilung „Marketing“ in der folgenden Tabelle der Fall ist.

Vorname

Abteilungs-ID

Abteilungsname

Jochen

31

Vertrieb

Julianne

33

Technik

Markus

33

Technik

Maria

34

Büro

Dieter

34

Büro

NULL

35

Marketing

GeschlossenKomplette äußere Verknüpfung

Eine komplette äußere Verknüpfung listet im Ergebnis alle Zeilen aus der rechten und der linken Tabelle auf, auch wenn eine Zeile keinen übereinstimmenden Wert mit der anderen Tabelle aufweist. Wenn es für eine Zeile keine übereinstimmende Zeile in der anderen Tabelle gibt, wird der fehlende Wert als NULL zurückgemeldet. Im Ergebnis dieses Beispiels ist dann sowohl die Abteilung „Marketing“ enthalten, obwohl sie keine Mitarbeiter aufweist, als auch die Mitarbeiterin „Doris“, obwohl sie keiner Abteilung zugeordnet ist.

Vorname

Abteilungs-ID

Abteilungsname

Jochen

31

Vertrieb

Julianne

33

Technik

Markus

33

Technik

Maria

34

Büro

Dieter

34

Büro

Doris

NULL

NULL

NULL

35

Marketing

Verwandte Themen