Gespeicherte Prozeduren und lokale Beziehungen

www.altova.com Dieses Kapitel drucken Vorherige Seite Eine Ebene nach oben Nächste Seite

Startseite >  Datenquellen und -ziele > Datenbanken und MapForce > Gespeicherte Prozeduren >

Gespeicherte Prozeduren und lokale Beziehungen

Lokale Beziehungen sind logische Beziehungen zwischen Datenbankfeldern, die Sie in MapForce erstellen können, ohne die zugrunde liegende Datenbank bearbeiten zu müssen, siehe auch Definieren von lokalen Beziehungen. Lokale Beziehungen können nicht nur für Datenbankfelder, sondern auch für gespeicherte Prozeduren sowohl in Quell- als auch Zielkomponenten definiert werden.

 

Mit Hilfe von lokalen Beziehungen in Quellkomponenten können Daten aus miteinander in Zusammenhang stehenden Objekten ausgelesen werden. So können z.B. IDs aus einer Datenbanktabelle ausgelesen werden und mit jeder dieser IDs kann eine gespeicherte Prozedur aufgerufen werden, um dazugehörige Informationen abzurufen. Außerdem kann eine gespeicherte Prozedur auch mit aus einer anderen Prozedur abgerufenen Daten aufgerufen werden.

 

In Zielkomponenten können Sie mit Hilfe von lokalen Beziehungen eine hierarchische Reihung definieren, in der mehrere miteinander in Zusammenhang stehende Prozeduren aufgerufen werden sollen. So können Sie etwa zuerst eine gespeicherte Prozedur aufrufen, die einen ID-Wert erstellt und eine weitere, die dazugehörige Informationen in eine Tabelle einfügt. Gespeicherte Prozeduren und Tabellen können in lokalen Beziehungen auch gemeinsam verwendet werden. So können Sie die Einfügung z.B. direkt in einer damit in Zusammenhang stehenden Tabelle durchführen, anstatt eine weitere Prozedur aufzurufen, siehe Generieren von Schlüsseln mit Hilfe von gespeicherten Prozeduren.

 

 

So erstellen Sie eine lokale Beziehung:

1.Klicken Sie mit der rechten Maustaste auf die Titelleiste einer Datenbankkomponente und wählen Sie im Kontextmenü den Befehl Datenbankobjekte hinzufügen/entfernen/bearbeiten. Daraufhin wird das Dialogfeld "Datenbankobjekte hinzufügen/entfernen/bearbeiten" aufgerufen.
2.Klicken Sie auf Beziehungen hinzufügen/bearbeiten.
3.Klicken Sie auf Beziehung hinzufügen und wählen Sie die Objekte aus, zwischen denen die Beziehung erstellt werden soll.

mf_sp_19

Wie oben gezeigt, besteht eine lokale Beziehung aus einem Objekt für Primärschlüssel/eindeutigen Schlüssel und einem Sekundärschlüsselobjekt. Betrachten Sie die Beziehung als Parent-Child-Beziehung. In der Mapping-Komponente wird das Objekt (Tabelle, Ansicht, Prozedur, usw.), in dem sich der Primärschlüssel/eindeutige Schlüssel befindet, als Parent angezeigt, während das Objekt, in dem der Sekundärschlüssel aufscheint, darunter verschachtelt angezeigt wird. So wurde etwa in der unten gezeigten Datenbankkomponente eine lokale Beziehung zwischen einer Datensatzspalte (RS1.Department) und einer Tabellenspalte (Department.Name) definiert. Daher wird die Tabelle Department als Child der gespeicherten Prozedur im Mapping angezeigt. Eine genauere Beschreibung dieses Beispiels finden Sie unter Lokale Beziehungen in Quellkomponenten.

mf_sp_23

In der folgenden Tabelle sind alle möglichen Felder aufgelistet, zwischen denen lokale Beziehungen definiert werden können. Auch gemischte Beziehungen (z.B. Mappen der Ausgabe einer gespeicherten Prozedur auf eine Datenbankspalte) sind möglich. Die an einer Beziehung beteiligten Felder müssen denselben oder einen kompatiblen Datentyp haben.

 

Primärschlüssel/eindeutiger Schlüssel

Sekundärschlüssel

Spalte einer Datenbanktabelle oder -ansicht
Output-Parameter oder Rückgabewert einer gespeicherten Prozedur, siehe auch Gespeicherte Prozeduren
Spalte einer von einer gespeicherten Prozedur zurückgegebenen Datensatzstruktur*
Spalte einer benutzerdefinierten SELECT-Anweisung, siehe auch SELECT-Anweisungen als virtuelle Tabellen.
Spalte einer Datenbanktabelle oder -ansicht
Input-Parameter einer gespeicherten Prozedur
Input-Parameter einer benutzerdefinierten SELECT-Anweisung

 

* Anwendbar, wenn die gespeicherte Prozedur entweder als Datenquelle (ohne Parameter) oder Funktion (mit Input- und Output-Parametern) aufgerufen wird. Damit die Datensatzstruktur für die Auswahl zur Verfügung steht, müssen Sie die gespeicherte Prozedur einmal ausführen, um die Datensatzstruktur abzurufen.


© 2019 Altova GmbH