Das Dienstprogramm StaticBinder verarbeitet die Einträge in Optionsdateien immer in der Reihenfolge, in der sie aufgelistet sind. Enthält eine Optionsdatei einen Eintrag für eine Anweisungsgruppe in einer pureQueryXML-Datei und einen Eintrag für die vollständige pureQueryXML-Datei, bestimmt die Reihenfolge, in der die Einträge angezeigt werden, die Ausgabe für diese Einträge.
Ein Eintrag für eine Anweisungsgruppe sieht etwa wie folgt aus:
Datei.pdqxml:Basispaketname
Der Basisname des Pakets ist der Wert des Attributs
name des Elements
package, das das Paket in der Datei
pureQueryXML beschreibt.
Der Basisname besteht aus zwei Teilen:
- Stammpaketname
- Zeichen, die das Dienstprogramm Configure an den Stammpaketnamen anhängt, wenn mehr als ein Paketname erforderlich ist.
Das Dienstprogramm erstellt beispielsweise mehr als einen Paketnamen, wenn die Anzahl der SQL-Anweisungen in einer Anweisungsgruppe den Wert der Option -sqlLimit des Dienstprogramms Configure überschreitet.
Die Beispiele in den beiden nachfolgenden Abschnitten verwenden die folgenden Objekte:
- captureFile.pdqxml
- Diese pureQueryXML-Datei enthält vier Anweisungsgruppen mit den folgenden Basispaketnamen: PKGA, PKGB, PKGC und PKGD. Jede der Anweisungsgruppen enthält SQL-Anweisungen, die die Tabelle TABLE1 verwenden. In allen diesen SQL-Anweisungen wird auf TABLE1 als TABLE1, nicht als Schemaname.TABLE1 verwiesen. Jeder Eintrag in der Optionsdatei verwendet die Option -bindOptions, um die Option QUALIFIER anzugeben, die den Schemanamen für Tabellen festlegt, auf die ohne Schemanamen verwiesen wird.
- captureFile.pdqxml:PKGA
- Diese Anweisungsgruppe erfordert bestimmte Optionen und hat daher einen separaten Eintrag in der Optionsdatei.
Denken Sie bei diesen Beispielen daran, dass das Dienstprogramm StaticBinder vier Pakete erstellt, wenn Sie eine Anweisungsgruppe ohne Angabe einer Isolationsstufe binden (ein Paket für jede Isolationsstufe).
Angenommen, Sie haben StaticBinder für PKGF ausgeführt, aber keine Isolationsstufe angegeben. Das Dienstprogramm StaticBinder erstellt die Pakete PKGF1, PKGF2, PKGF3 und PKGF4, wobei jede angehängte Zahl die Isolationsstufe für das Paket anzeigt.
Beispiele mit einer Version von PKGD als Ergebnis
- In diesem Beispiel bindet das Dienstprogramm StaticBinder zunächst alle Anweisungsgruppen in der pureQueryXML-Datei captureFile.pdqxml mit dem Qualifikationsmerkmal TESTSCHEMA. Dazu gehört auch die Anweisungsgruppe mit dem Basispaketnamen PKGA. Das Dienstprogramm StaticBinder bindet dann die Anweisungsgruppe mit dem Basispaketnamen PKGA erneut, dieses Mal jedoch mit dem Qualifikationsmerkmal PRODUCTIONSCHEMA. Die für den zweiten Eintrag gebundenen Pakete ersetzen die Pakete mit gleichem Namen, die für den ersten Eintrag gebunden wurden.
C:\dir\captureFile.pdqxml = -bindOptions "QUALIFIER TESTSCHEMA"
C:\dir\captureFile.pdqxml:PKGA = -bindOptions "QUALIFIER PRODUCTIONSCHEMA"
Endergebnis:
- Pakete, die PRODUCTIONSCHEMA.TABLE1: PKGA1, PKGA2, PKGA3, PKGA4 verwenden
- Pakete, die TESTSCHEMA.TABLE1: PKGB1, PKGB2, PKGB3, PKGB4,
PKGC1, PKGC2, PKGC3, PKGC4, PKGD1, PKGD2, PKGD3, PKGD4 verwenden
- In diesem Beispiel bindet das Dienstprogramm StaticBinder die Pakete, die dem Basispaketnamen PKGA mit dem Qualifikationsmerkmal PRODUCTIONSCHEMA zugeordnet sind, und dann alle Pakete in captureFile.pdqxml mit dem Qualifikationsmerkmal TESTSCHEMA. Die für den zweiten Eintrag gebundenen Pakete ersetzen die Pakete mit gleichem Namen, die für den ersten Eintrag gebunden wurden.
C:\dir\captureFile.pdqxml:PKGA = -bindOptions "QUALIFIER PRODUCTIONSCHEMA"
C:\dir\captureFile.pdqxml = -bindOptions "QUALIFIER TESTSCHEMA"
Endergebnis:
- Keine Pakete verwenden PRODUCTIONSCHEMA.TABLE1
- Pakete, die TESTSCHEMA.TABLE1 verwenden: PKGA1, PKGA2, PKGA3, PKGA4, PKGB1, PKGB2, PKGB3, PKGB4, PKGC1, PKGC2, PKGC3, PKGC4, PKGD1, PKGD2, PKGD3, PKGD4
Durch Angabe der Option -differenceOnly in der zweiten Zeile können Sie das erneute Binden von PKGA durch das Dienstprogramm StaticBinder jedoch unterbinden. StaticBinder bindet diese Pakete nicht erneut, da bereits Pakete in der Datenbank mit dem gleichen Objektgruppenname, Paketname und Konsistenztoken vorhanden sind.
C:\dir\captureFile.pdqxml:PKGA = -bindOptions "QUALIFIER PRODUCTIONSCHEMA"
C:\dir\captureFile.pdqxml = -bindOptions "QUALIFIER TESTSCHEMA" -differenceOnly TRUE
Endergebnis:
- Pakete, die PRODUCTIONSCHEMA.TABLE1: PKGA1, PKGA2, PKGA3, PKGA4 verwenden
- Pakete, die TESTSCHEMA.TABLE1: PKGB1, PKGB2, PKGB3, PKGB4,
PKGC1, PKGC2, PKGC3, PKGC4, PKGD1, PKGD2, PKGD3, PKGD4 verwenden
Beispiele mit zwei Versionen von PKGD als Ergebnis
- In diesem Beispiel verarbeitet das Dienstprogramm StaticBinder zunächst alle Anweisungsgruppen in der pureQueryXML-Datei captureFile.pdqxml, einschließlich der Anweisungsgruppe mit dem Basispaketnamen PKGA. StaticBinder bindet vier Pakete auf der Isolationsstufe 'Uncommitted Read' (Nicht festgeschriebener Lesevorgang) und hängt an jeden Paketnamen die Zahl 1 an. Das Dienstprogramm StaticBinder bindet das Paket PKGA dann erneut, dieses Mal jedoch mit der Isolationsstufe 'Cursor Stability' (Cursorstabilität). Das Dienstprogramm hängt die Zahl 2 an den Paketnamen an.
C:\dir\captureFile.pdqxml = -isolationLevel UR
C:\dir\captureFile.pdqxml:PKGA = -isolationLevel CS
Endergebnis:
- PKGA1, PKGB1, PKGC1, PKGD1
- PKGA2
- In diesem Beispiel werden das Paket PKGA mit der Isolationsstufe 'Cursor Stability' (Cursorstabilität) und dann alle Pakete in captureFile.pdqxml mit der Isolationsstufe 'Uncommitted Read' (Nicht festgeschriebener Lesevorgang) gebunden.
C:\dir\captureFile.pdqxml:PKGA = -bindOptions "QUALIFIER PRODUCTIONSCHEMA"
C:\dir\captureFile.pdqxml = -bindOptions "QUALIFIER TESTSCHEMA"
Endergebnis:
- Pakete, die PRODUCTIONSCHEMA.TABLE 1: PKGA2 verwenden
- Pakete, die TESTSCHEMA.TABLE1: PKGA1, PKGB1, PKGC1, PKGD1 verwenden
Durch Angabe der Option -differenceOnly in der zweiten Zeile können Sie das erneute Binden von PKGA durch das Dienstprogramm StaticBinder jedoch unterbinden. StaticBinder bindet diese Pakete nicht erneut, da bereits Pakete in der Datenbank mit dem gleichen Objektgruppenname, Paketname und Konsistenztoken vorhanden sind.
C:\dir\captureFile.pdqxml:PKGD = -bindOptions "QUALIFIER PRODUCTIONSCHEMA"
C:\dir\captureFile.pdqxml = -bindOptions "QUALIFIER TESTSCHEMA" -differenceOnly TRUE
Endergebnis:
- Pakete, die PRODUCTIONSCHEMA.TABLE 1: PKGA2 verwenden
- Pakete, die TESTSCHEMA.TABLE1: PKGB1, PKGC1, PKGD1 verwenden