Abfragen
Mithilfe von Abfragen können Sie Entwurfszeit- und Laufzeitobjekte abrufen.
Sie können Entwurfszeitobjekte aus einem Modellrepository oder Laufzeitobjekte abrufen, die einem Datenintegrationsdienst bereitgestellt wurden. Verwenden Sie zum Erstellen einer Abfrage Abfrageparameter, die die abzurufenden Objekte angeben. Sie können eine Abfrage weiter verfeinern, indem Sie die Where-Klausel und Operatoren verwenden.
Abfragestruktur
Verwenden Sie zum Erstellen einer Abfrage Parameter, Vorgänge und die Where-Klausel.
Sie können eine Abfrage strukturieren, indem Sie Parameter, Vergleichsoperatoren, logische Operatoren und die Where-Klausel verwenden. Sie können den Vorrang von Abfragen mithilfe von Klammern steuern.
Eine Abfrage kann mit den folgenden Elementen strukturiert werden:
- Abfrageparameter
- Abfrageparameter werden in Subjekt, Uhrzeit, Status und Speicherort kategorisiert. Jeder Abfrageparameter muss einen Vergleichsoperator enthalten. Beispiel:
type = mapping
- Vergleichsoperatoren
- Vergleichsoperatoren werden verwendet, um Kriterien für die Abfrage von Objekten anzugeben. Vergleichsoperatoren werden zusammen mit den Abfrageparametern verwendet, um eine Abfrage zu erstellen.
- Logische Operatoren
- Logische Operatoren werden verwendet, um eine Bedingung in einer Abfrage zu testen. Logische Operatoren können mehrere Abfrageparameter haben. Beispiel:
type = mapping || createdBy = admin
- Where-Klausel
- Die Where-Klausel dient dazu, den Abfrageumfang einzuschränken. Beispiel:
name = mapping1 where project = project1, folder = folder1.
Abfrageparameter
Verwenden Sie Abfrageparameter, um Entwurfszeitobjekte in einem Modellrepository und Laufzeitobjekte abzufragen, die in einem Datenintegrationsdienst bereitgestellt werden. Sie können das Subjekt, die Uhrzeit, den Status und den Speicherort zum Erstellen einer Abfrage verwenden.
Abfrageparameter werden in folgende Parametertypen unterteilt:
- Subjekt
- Parameter, die ein Subjekt testen, wie z. B. ein bestimmtes Objekt oder einen bestimmten Benutzer. In der folgenden Tabelle werden die Parameter für Subjekte aufgelistet:
Parameter | Objekttyp | Beschreibung |
|---|
name | Entwurfszeitobjekt Laufzeitobjekt | Name des Objekts, das Sie abfragen möchten. Sie können den Namen eines der folgenden Objekttypen angeben: - - Mapping
- - Physisches Datenobjekt
- - Parametersatz
|
Tag | Entwurfszeitobjekt | Tag, das dem Objekt zugewiesen ist. |
createdBy | Entwurfszeitobjekt | Benutzer, der das Objekt erstellt hat. |
lastModifiedBy | Entwurfszeitobjekt | Benutzer, der das Objekt zuletzt geändert hat. |
Typ | Entwurfszeitobjekt | Filtert den Objekttyp. |
object | Entwurfszeitobjekt | Filtert und ruft Objekte aus einem Ordner ab. Geben Sie den vollständigen Pfad zu Objekten ab Root an, einschließlich des Projektnamens, der Ordner und des Objektnamens. |
- Uhrzeit
- Parameter, die die Uhrzeit testen, zu der ein Objekt geändert wurde. In der folgenden Tabelle werden die Parameter für Uhrzeiten aufgelistet:
Parameter | Objekttyp | Beschreibung |
|---|
lastModifiedTime | Entwurfszeitobjekt | Zeitpunkt, zu dem das Objekt zuletzt geändert wurde. |
checkInTime | Entwurfszeitobjekt | Zeitpunkt, zu dem das Objekt zuletzt eingecheckt wurde. HINWEIS: Gilt nur, wenn ein Versionsverwaltungssystem im Modellrepository integriert ist. |
checkOutTime | Entwurfszeitobjekt | Zeitpunkt, zu dem das Objekt zuletzt ausgecheckt wurde. HINWEIS: Gilt nur, wenn ein Versionsverwaltungssystem im Modellrepository integriert ist. |
creationTime | Entwurfszeitobjekt | Zeitpunkt, zu dem das Objekt erstellt wurde. |
- Status
- Parameter, die den Status eines Objekts testen. In der folgenden Tabelle werden die Parameter für Statusangaben aufgelistet:
Parameter | Objekttyp | Beschreibung |
|---|
versionStatus | Entwurfszeitobjekt | Versionsstatus des Objekts. Der Versionsstatus kann entweder eingecheckt oder ausgecheckt lauten. HINWEIS: Gilt nur, wenn ein Versionsverwaltungssystem im Modellrepository integriert ist. |
- Speicherort
- Parameter, die den Speicherort eines Objekts testen, wie z. B. eines bestimmten Projekts, eines Ordners oder einer Laufzeitanwendung. In der folgenden Tabelle werden die Parameter für Speicherorte aufgelistet:
Parameter | Objekttyp | Beschreibung |
|---|
Ordner | Entwurfszeitobjekt | Ordner, der das Objekt enthält. |
Projekt | Entwurfszeitobjekt | Projekt, das das Objekt enthält. |
Anwendung | Laufzeitobjekt | Name der Laufzeitanwendung, die das Objekt enthält. |
Vergleichsoperatoren
Verwenden Sie die Vergleichsoperatoren mit Abfrageparametern, um eine Abfrage zu erstellen. Sie können Vergleichsoperatoren verwenden, um beim Abfragen von Objekten Kriterien anzugeben.
In der folgenden Tabelle werden die Vergleichsoperatoren aufgelistet, die Sie mit jedem Abfrageparametertyp verwenden können:
Typ des Abfrageparameters | Enthält Abfrageparameter | Vergleichsoperatoren | Beispiele |
|---|
Subjekt | name Tag createdBy lastModifiedBy | ~contains~ ~not-contains~ ~not-ends-with~ ~not-starts-with~ ~ends-with~ ~starts-with~ = != ~in~ ~not-in~ | Name ~contains~ Zuordnung Tag ~in~ (tg_1, tg_2, tg_3) createdBy = Administrator lastModifiedBy ~ends-with~ Besucher |
Betreff | object type | = != ~in~ ~not-in~ | type = Mapping object != Mapping objectin(P1/F1/Map1,P2/F1/Map2) |
Uhrzeit | lastModifiedTime checkInTime checkOutTime creationTime | > < ~within-last~ ~between~ ~not-between~ | lastModifiedTime < 2019-02-26 20:32:54 checkInTime ~between~ (2018-12-26 20:32:54, 2018-05-26 20:32:54) checkOutTime ~within-last~ 10 (Tage) |
Status | versionStatus | ~is-checkedin~ ~is-checkedout~ | versionStatus ~is-checkedin~ versionStatus ~is-checkedout~ |
Speicherort | Ordner Projekt Anwendung | ~contains~ ~not-ends-with~ ~not-contains~ ~not-starts-with~ ~ends-with~ ~starts-with~ = != ~in~ ~not-in~ | name ~contains~ Mapping where project ~ends-with~ _1 lastModifiedBy ~ends-with~ trator where folder ~not-in~ (Folder_3, Folder_2) all where project=Project_1, folder=Folder_1 name = Mapping where project=Project_1, folder=/Folder_1/Folder_2/ name = Mapping where project=Project_1, folder=/ name = captain_america where app~in~ (MapGenTest, MapGenEg) |
Wenn Sie eine Abfrage durch Angabe eines Kriteriums mithilfe von Vergleichsoperatoren erstellt haben, gibt die Abfrage das Objekt an den Client zurück, der das Kriterium erfüllt.
Sie können beispielsweise eine Abfrage zum Abrufen von Objekten erstellen, die den Namen mapping 1 aufweisen.
name=mapping1
HINWEIS: Das Zeitformat ist YYYY-MM-DD HH24:MI:SS.
Angabe eines Ordnerpfads
Verwenden Sie zum Erstellen einer Abfrage einen rekursiven oder nicht rekursiven Ordnerpfad. Sie können den Ordnerpfad angeben, um auf Objekte innerhalb eines Ordners zuzugreifen.
Sie können die folgenden Typen von Ordnerpfaden verwenden:
- •Rekursiv. Enthält Objekte im Ordner und allen Unterordnern.
- •Nicht rekursiv. Enthält nur die Objekte innerhalb des Root-Ordners.
Ordnerpfade sind standardmäßig rekursiv. Zur Angabe eines nicht rekursiven Ordnerpfads verwenden Sie einen Schrägstrich am Ende des Ordnerpfads.
In der folgenden Tabelle werden Beispielabfragen mit rekursiven und nicht rekursiven Ordnerpfaden beschrieben:
Beispielabfrage | Beschreibung |
|---|
name=map1 folder=/ | Nicht rekursiv. Die Abfrage untersucht nur die Objekte, die sich direkt unter dem Projekt befinden. |
name=map1 folder=/f1/f2/ | Nicht rekursiv. Die Abfrage untersucht nur die Objekte, die sich im Pfad /f1/f2/ befinden. |
name=map1 folder=f1 | Rekursiv. Die Abfrage untersucht alle Objekte, die sich im Ordner f1 und in allen Unterordnern von f1 befinden. |
name=map1 folder=/f1/f2 | Rekursiv. Die Abfrage untersucht alle Objekte, die sich im Pfad /f1/f2 und in allen Unterordnern von f2 befinden. |
HINWEIS: Wenn Sie einen Schrägstrich zur Angabe eines Ordnerpfads verwenden, stehen nur die folgenden Vergleichsoperatoren zur Verfügung: =, !=, ~in~ und ~not-in~.
Logische Operatoren
Verwenden Sie logische Operatoren, um zu testen, ob eine oder mehrere Bedingungen in einer Abfrage TRUE oder FALSE sind.
Sie können folgende logische Operatoren verwenden:
Logischer Operator | Beschreibung | Beispiel |
|---|
! | NOT | ! Name ~not-starts-with~ M_ |
&& | AND | Name ~starts-with~ map_&& lastModifiedBy ~ends-with~ Besucher |
|| | OR | checkInTime > 2018-12-26 20:32:54 || lastModifiedTime > 2019-02-26 20:32:54 |
HINWEIS: Sie können keine logischen Operatoren verwenden, um Speicherortabfrageparameter, einschließlich Ordnernamen, Projektnamen und Anwendungsnamen, zu testen.
Where-Klausel
Verwenden Sie eine Where-Klausel, um den Umfang einer Abfrage einzuschränken.
Sie können innerhalb einer Where-Klausel nur Speicherortabfrageparameter angeben. Da Parameter zur Speicherortabfrage keine Unterstützung für logische Operatoren bieten, können logische Operatoren nicht innerhalb der Where-Klausel verwendet werden.
Beispielsweise findet die folgende Abfrage eine Zuordnung innerhalb eines bestimmten Projekts und Ordners:
name=mapping1 where project1, folder=folder1
Sie können außerhalb der Where-Klausel Klammern verwenden. Die folgende Abfrage verwendet beispielsweise die Ausdrücke (name contains super && name ends-with boy) und (name contains ragnarok), die in Klammern eingeschlossen sind und sich außerhalb der Where-Klausel befinden:
(name contains super && name ends-with boy) || (name contains ragnarok) where project=MapGenTest
Sie können das Schlüsselwort all zum Auffinden aller Entwurfszeitobjekte in einem Modellrepository oder aller Laufzeitobjekte verwenden, die in einem Datenintegrationsdienst bereitgestellt werden. Sie können das Schlüsselwort all mit der Where-Klausel verwenden.
Beispielsweise findet die folgende Abfrage alle Objekte innerhalb eines bestimmten Ordners:
all where folder=Folder_1