Für mit Annotationen versehene Methoden verwendetes Dienstprogramm StaticBinder

Wenn Sie den Programmierstil mit Annotationsmethode und eine DB2-Datenbank verwenden, können Sie die SQL-Anweisungen in Ihren mit Annotationen versehenen Methoden mithilfe des pureQuery-Dienstprogramms StaticBinder an diese Datenquelle binden. Sie können mit dem Dienstprogramm StaticBinder auch DBRM-Dateien generieren.

Eine Beschreibung der in den Diagrammen verwendeten Konventionen finden Sie in Syntaxdiagramme lesen.

Übersicht

Anwendungen, die eingebettetes SQL verwenden, das statisch in DB2-Paketen gebunden ist, haben natürliche Vorteile in den Bereichen Leistung, Zuverlässigkeit, Sicherheit, Überwachung und Verwaltung.

Führen Sie vor dem Dienstprogramm StaticBinder das pureQuery-Dienstprogramm Generator aus, um die Implementierungsklassen für die Schnittstellen zu generieren, die die zu bindenden SQL-Anweisungen enthalten. Wenn das pureQuery-Dienstprogramm Generator ausgeführt wird, werden alle Informationen, die zur Erstellung eines statischen DB2-Pakets benötigt werden, erfasst und in der generierten Implementierungsklasse gespeichert. Zu diesen Informationen gehören die SQL-Anweisungen und alle gültigen Datentypinformationen aus den Java™-Klassendefinitionen und alle Spalten- oder Parametermetadaten aus der Zieldatenbank. Die Informationen enthalten außerdem die Stammpaketnamen und optional die Objektgruppen-IDs und Versionen für die DB2-Pakete.

Das Dienstprogramm StaticBinder liest diese Informationen aus den Implementierungsklassen, wenn es DB2-Pakete erstellt und bindet. Wenn Sie das Dienstprogramm StaticBinder ausführen, können Sie in der Befehlszeile entweder die Implementierungsklassen angeben, aus denen gelesen werden soll, oder die Schnittstellen, die diesen Klassen entsprechen. Wenn Sie eine Optionsdatei verwenden, können Sie mindestens eine Schnittstelle angeben. Das Dienstprogramm StaticBinder liest die Informationen aus den entsprechenden Implementierungsklassen.

Das pureQuery-Dienstprogramm StaticBinder erstellt standardmäßig vier Pakete oder DBRM-Dateien: eine(s) für jede der vier DB2-Isolationsstufen. Das pureQuery-Dienstprogramm StaticBinder gibt die Isolationsstufe an, indem die folgenden Zahlen an die Stammnamen der Pakete oder DBRM-Dateien angefügt werden:
1
Für Isolationsstufe Uncommitted Read (UR)
2
Für Isolationsstufe Cursor Stability (CS)
3
Für Isolationsstufe Read Stability (RS)
4
Für Isolationsstufe Repeatable Read (RR)

Wenn Sie die Option -forceSingleBindIsolation beim Ausführen des Dienstprogramms Generator verwenden, wird die Zahl für die Isolationsstufe jedoch nicht an den Namen des erstellten Pakets angehängt.

Wenn Sie beim Ausführen einer Bindung die Option -isolationLevel verwenden oder die Isolationsstufe in der Zeichenfolge für die Bindeoptionen angeben, wird lediglich das Paket bzw. die DBRM-Datei für die von Ihnen angegebene Isolationsstufe erstellt. Beim Erstellen von Paketen bzw. DBRM-Dateien für alle vier Isolationsstufen folgt der Name den von StaticBinder verwendeten Konventionen.

Optionsdateien verwenden

Eine Optionsdatei listet die Schnittstelle(n) auf, die vom pureQuery-Dienstprogramm StaticBinder verarbeitet werden soll(en), sowie die Optionen, die dem Dienstprogramm StaticBinder mitteilen, wie die Schnittstellen zu verarbeiten sind. Sie können Standardoptionen definieren, die für alle in einer Optionsdatei aufgeführten Schnittstellen gelten. Sie können außerdem Optionen für Schnittstellen definieren, sodass Sie die Standardoptionen überschreiben können, und andere Optionen definieren, die nur für einzelne Schnittstellen bestimmt sind.

Im Befehl für die Ausführung des Dienstprogramms StaticBinder können Sie die zu verwendende Datei mit der Option -optionsFile angeben.

Eine einfache Optionsdatei für das pureQuery-Dienstprogramm StaticBinder könnte beispielsweise wie folgt aussehen:
defaultOptions = -bindOptions "QUALIFIER qual1" -traceFile C:\logs\staticbinder.txt -traceLevel ALL -url jdbc:db2://SRVR01:50000/DB01 -username user01 -password pass01
com.myCompany.MyInterfaceA = -bindOptions "QUALIFIER qual2"
com.myCompany.MyInterfaceB
com.myCompany.MyInterfaceC = -url jdbc:db2://SRVR01:50001/DB02 -username user02 -password pass02
In diesem Beispiel gibt die mit defaultOptions beginnende Zeile das Qualifikationsmerkmal für die DB2-Pakete an und definiert die Standardverbindungs-URL. Die Zeile gibt außerdem die Datei an, in der Nachrichten protokolliert werden sollen. Die nächste Zeile gibt eine Schnittstelle mit einem Qualifikationsmerkmal an, welches das Standardqualifikationsmerkmal überschreibt. Die nächste Zeile gibt eine Schnittstelle an, für die alle Standardoptionen gelten. Die letzte Zeile gibt eine Schnittstelle an, die auf einer anderen Datenbank gebunden werden soll.
Sie können außerdem Kommentare in Optionsdateien aufnehmen, indem Sie das Symbol # an den Anfang jeder Kommentarzeile stellen. Wenn dieses Symbol in dem Wert einer der Optionen enthalten sein soll, setzen Sie den Wert in doppelte Anführungszeichen:
-pkgVersion "ver#1"
Wenn Sie das Dienstprogramm StaticBinder über eine Befehlszeile ausführen und eine Optionsdatei verwenden, erkennt pureQuery Optionen in folgender Reihenfolge:
  1. Optionen in der Befehlszeile
  2. Optionen für einzelne Schnittstellen in der angegebenen Optionsdatei
  3. Standardoptionen in der angegebenen Optionsdatei

Berechtigung

Die Gruppe der Zugriffsrechte des Benutzers, der das Dienstprogramm aufruft, muss eine der folgenden Berechtigungen enthalten:
  • Berechtigung SYSADM
  • Berechtigung DBADM
  • Wenn das Paket nicht vorhanden ist, das Zugriffsrecht BINDADD und eines der folgenden Zugriffsrechte:
    • Zugriffsrecht CREATEIN
    • DB2 für z/OS: Berechtigung PACKADM für die Objektgruppe oder für alle Objektgruppen
    • DB2 Database für Linux®, UNIX® und Windows®: Berechtigung IMPLICIT_SCHEMA für die Datenbank, wenn der Schemaname des Pakets nicht vorhanden ist
  • Wenn das Paket vorhanden ist:
    • DB2 für z/OS: Das Zugriffsrecht BIND für das Paket
    • DB2 Database für Linux, UNIX und Windows: Zugriffsrecht ALTERIN für das Schema und Zugriffsrecht BIND für das Paket
Der Benutzer benötigt außerdem alle Zugriffsrechte, die für die Kompilierung beliebiger statischer SQL-Anweisungen in der Anwendung erforderlich sind. Zugriffsrechte, die Gruppen erteilt werden, werden nicht für die Berechtigungsprüfung von statischen Anweisungen verwendet.

DB2 Database für Linux, UNIX und Windows: Wenn der Benutzer über die Berechtigung SYSADM verfügt, aber keine expliziten Zugriffsrechte für das Ausführen der Bindung hat, erteilt der DB2-Datenbankmanager automatisch die explizite Berechtigung DBADM.

Syntax für den Befehl zur Ausführung des Dienstprogramms StaticBinder beim Binden über ein Archiv

Sie können diesen Befehl verwenden, um das Dienstprogramm StaticBinder für ein Archiv ausführen, das Ihre Anwendung enthält. Das Archiv muss die Schnittstellen und Implementierungsklassen enthalten, die dem Dienstprogramm StaticBinder zur Verfügung gestellt werden sollen. Verwenden Sie eine Optionsdatei mit der Erweiterung .bindProps, in der die Schnittstellen und Implementierungsklassen aufgelistet sind.

Das Dienstprogramm StaticBinder erstellt ein Paket für jede Schnittstelle oder Implementierungsklasse, die Sie angeben. Wenn Sie bei der Ausführung des Dienstprogramms 'Generator' nicht die Option rootPkgName verwendet haben, ist der Stammname für jedes Paket einer dieser beiden Stammnamen:
  • Wenn Ihre Datenbank keine langen Paketnamen unterstützt: Der Stammname wird aus den ersten 7 Zeichen im Namen der entsprechenden Schnittstelle gebildet. Wenn zwei oder mehr Schnittstellen Namen aufweisen, die mit den gleichen 7 Zeichen anfangen, überschreibt das Paket, das für die zweite dieser Schnittstellen erstellt wird, das für die erste Schnittstelle erstellte Paket, und das Paket, das für die dritte dieser Schnittstellen erstellt wird, überschreibt das für die zweite Schnittstelle erstellte Paket etc.
  • Wenn Ihre Datenbank lange Paketnamen unterstützt: Der Stammname ist der vollständige Name der entsprechenden Schnittstelle.
Syntaxdiagramm lesenSyntaxdiagramm überspringen
                                        (1)   
>>-java--com.ibm.pdq.tools.StaticBinder------------------------->

    (2)                                                                  
>-------- -url--jdbc--:--db2--:--//--Server--+---------+--/--Datenbank-->
                                             '-:--Port-'                 

>-- -username--Benutzer-ID-- -password--Kennwort---------------->

>-- -archive-- -Dateiname--+-.ear-+----------------------------->
                           +-.jar-+   
                           +-.war-+   
                           '-.zip-'   

>--+-------------------------------------------------------------------------+-->
   |                   (3)                                                   |   
   +-| DBRM-Optionen |-------------------------------------------------------+   
   +- -bindOptions-- -"--Bindeoptionen--"--+-------------------------------+-+   
   |                                       '- -verifyPackages--+-DETAIL--+-' |   
   |                                                           '-SUMMARY-'   |   
   '- -verifyPackages--+-DETAIL--+-------------------------------------------'   
                       '-SUMMARY-'                                               

>--+-----------------------------+--+----------------+---------->
   |                   .-FALSE-. |  |            (4) |   
   '- -differenceOnly--+-TRUE--+-'  '-| -grant |-----'   

>--+--------------------------+--+-----------------------+-----><
   '- -isolationLevel--+-CS-+-'  |                   (5) |   
                       +-RR-+    '-| Traceoptionen |-----'   
                       +-RS-+                                
                       '-UR-'                                

Anmerkungen:
  1. Sie können die Optionen in beliebiger Reihenfolge angeben.
  2. Sie brauchen die Optionen -url, -username- und -password nicht zu verwenden, wenn Sie nur DBRM-Dateien erstellen.
  3. Informationen zur Syntax finden Sie in der Beschreibung dieser Optionen.
  4. Informationen zur Syntax finden Sie in der Beschreibung dieser Option.
  5. Informationen zur Syntax finden Sie in der Beschreibung dieser Optionen.

Syntax für den Befehl zur Ausführung des Dienstprogramms StaticBinder ohne Optionsdatei

Sie können mit diesem Befehl die Namen der Schnittstellen oder Implementierungsklassen sowie die Optionen für die Erstellung eines DB2-Pakets oder einer DBRM-Datei angeben.

Das Dienstprogramm StaticBinder erstellt ein Paket für jede Schnittstelle oder Implementierungsklasse, die Sie angeben. Wenn Sie bei der Ausführung des Dienstprogramms 'Generator' nicht die Option rootPkgName verwendet haben, ist der Stammname für jedes Paket einer dieser beiden Stammnamen:
  • Wenn Ihre Datenbank keine langen Paketnamen unterstützt: Der Stammname wird aus den ersten 7 Zeichen im Namen der entsprechenden Schnittstelle gebildet. Wenn zwei oder mehr Schnittstellen Namen aufweisen, die mit den gleichen 7 Zeichen anfangen, überschreibt das Paket, das für die zweite dieser Schnittstellen erstellt wird, das für die erste Schnittstelle erstellte Paket, und das Paket, das für die dritte dieser Schnittstellen erstellt wird, überschreibt das für die zweite Schnittstelle erstellte Paket etc.
  • Wenn Ihre Datenbank lange Paketnamen unterstützt: Der Stammname ist der vollständige Name der entsprechenden Schnittstelle.
Syntaxdiagramm lesenSyntaxdiagramm überspringen
                                        (1)   
>>-java--com.ibm.pdq.tools.StaticBinder------------------------->

    (2)                                                                  
>-------- -url--jdbc--:--db2--:--//--Server--+---------+--/--Datenbank-->
                                             '-:--Port-'                 

>-- -username--Benutzer-ID-- -password--Kennwort---------------->

>--+-------------------------------------------------------------------------+-->
   |                   (3)                                                   |   
   +-| DBRM-Optionen |-------------------------------------------------------+   
   +- -bindOptions-- -"--Bindeoptionen--"--+-------------------------------+-+   
   |                                       '- -verifyPackages--+-DETAIL--+-' |   
   |                                                           '-SUMMARY-'   |   
   '- -verifyPackages--+-DETAIL--+-------------------------------------------'   
                       '-SUMMARY-'                                               

>--+-----------------------------+--+----------------+---------->
   |                   .-FALSE-. |  |            (4) |   
   '- -differenceOnly--+-TRUE--+-'  '-| -grant |-----'   

>--+--------------------------+--+-----------------------+------>
   '- -isolationLevel--+-CS-+-'  |                   (5) |   
                       +-RR-+    '-| Traceoptionen |-----'   
                       +-RS-+                                
                       '-UR-'                                

                .--------------------------.   
                V                          |   
>-- -interface----Java-Paket.Schnittstelle-+-------------------><

Anmerkungen:
  1. Sie können die Optionen in beliebiger Reihenfolge angeben.
  2. Sie brauchen die Optionen -url, -username- und -password nicht zu verwenden, wenn Sie nur DBRM-Dateien erstellen.
  3. Informationen zur Syntax finden Sie in der Beschreibung dieser Optionen.
  4. Informationen zur Syntax finden Sie in der Beschreibung dieser Option.
  5. Informationen zur Syntax finden Sie in der Beschreibung dieser Optionen.

Syntax für den Befehl zur Ausführung des Dienstprogramms StaticBinder mit Optionsdatei

Sie können die Namen von Schnittstellen und die Optionen für die Erstellung von DB2-Paketen oder DBRM-Dateien, die auf jeder dieser Schnittstellen basieren über den Befehl und eine Optionsdatei angeben.

Achtung: Sie können Implementierungsklassen in einer Befehlszeile angeben, wenn Sie keine Optionsdatei verwenden, aber nicht, wenn Sie eine Optionsdatei verwenden.
Syntaxdiagramm lesenSyntaxdiagramm überspringen
                                        (1)   
>>-java--com.ibm.pdq.tools.StaticBinder------------------------->

>--+--------------------------------------------------------------------------------------------------------------+-->
   '- -url--jdbc--:--db2--:--//--Server--+---------+--/--Datenbank-- -username--Benutzer-ID-- -password--Kennwort-'   
                                         '-:--Port-'                                                                  

>--+--------------------------------------------------+--------->
   |              .---------------------------------. |   
   |              V                                 | |   
   '- -interface----Java-Paket.Schnittstelle.Klasse-+-'   

>-- -optionsFile--Dateiname--+-----------------------+---------->
                             |                   (2) |   
                             '-| Traceoptionen |-----'   

>--+-------------------------------+---------------------------><
   '- -verifyPackages--+-DETAIL--+-'   
                       '-SUMMARY-'     

Anmerkungen:
  1. Sie können die Optionen in beliebiger Reihenfolge angeben.
  2. Informationen zur Syntax finden Sie in der Beschreibung dieser Optionen.

Syntax zur Angabe von Standardoptionen in einer Optionsdatei für das Dienstprogramm StaticBinder

Dieses Syntaxdiagramm zeigt die Standardoptionen, die Sie für alle in einer Optionsdatei aufgeführten Schnittstellen festlegen können.

Syntaxdiagramm lesenSyntaxdiagramm überspringen
                     (1)   
>>-defaultOptions--=-------------------------------------------->

>--+--------------------------------------------------------------------------------------------------------------------+-->
   |  (2)                                                                                                               |   
   '------- -url--jdbc--:--db2--:--//--Server--+---------+--/--Datenbank-- -username--Benutzer-ID-- -password--Kennwort-'   
                                               '-:--Port-'                                                                  

>--+----------------------------------------------+------------->
   '-+------------------------------------------+-'   
     '-+- -bindOptions-- -"--Bindeoptionen--"-+-'     
       |                   (3)                |       
       '-| DBRM-Optionen |--------------------'       

>--+----------------+--+--------------------------+------------->
   |            (4) |  '- -isolationLevel--+-CS-+-'   
   '-| -grant |-----'                      +-RR-+     
                                           +-RS-+     
                                           '-UR-'     

>--+-----------------------+-----------------------------------><
   |                   (5) |   
   '-| Traceoptionen |-----'   

Anmerkungen:
  1. Sie können die Optionen in beliebiger Reihenfolge angeben.
  2. Sie brauchen die Optionen -url, -username- und -password nicht zu verwenden, wenn Sie nur DBRM-Dateien erstellen.
  3. Informationen zur Syntax finden Sie in der Beschreibung dieser Optionen.
  4. Informationen zur Syntax finden Sie in der Beschreibung dieser Option.
  5. Informationen zur Syntax finden Sie in der Beschreibung dieser Optionen.

Syntax zur Angabe von Optionen für einzelne Schnittstellen in einer Optionsdatei für das Dienstprogramm StaticBinder

Dieses Syntaxdiagramm zeigt die Optionen, die Sie für jede in einer Optionsdatei aufgeführte Schnittstelle festlegen können.

Syntaxdiagramm lesenSyntaxdiagramm überspringen
                               (1)   
>>-Java-Paket.Schnittstelle--=---------------------------------->

>--+--------------------------------------------------------------------------------------------------------------------+-->
   |  (2)                                                                                                               |   
   '------- -url--jdbc--:--db2--:--//--Server--+---------+--/--Datenbank-- -username--Benutzer-ID-- -password--Kennwort-'   
                                               '-:--Port-'                                                                  

>--+----------------------------------------------+------------->
   '-+------------------------------------------+-'   
     '-+- -bindOptions-- -"--Bindeoptionen--"-+-'     
       |                   (3)                |       
       '-| DBRM-Optionen |--------------------'       

>--+----------------+--+--------------------------+------------><
   |            (4) |  '- -isolationLevel--+-CS-+-'   
   '-| -grant |-----'                      +-RR-+     
                                           +-RS-+     
                                           '-UR-'     

Anmerkungen:
  1. Sie können die Optionen in beliebiger Reihenfolge angeben.
  2. Sie brauchen die Optionen -url, -username- und -password nicht zu verwenden, wenn Sie nur DBRM-Dateien erstellen.
  3. Informationen zur Syntax finden Sie in der Beschreibung dieser Optionen.
  4. Informationen zur Syntax finden Sie in der Beschreibung dieser Option.

Dienstprogramm StaticBinder über eine Anwendung ausführen

Verwenden Sie die Methode bind() der Klasse com.ibm.pdq.tools.StaticBinder, um die SQL-Anweisungen Ihrer Anwendung während der Ausführung in DB2-Paketen zu binden. Die Methode gibt den Wert FALSE zurück, wenn die Bindeoperation fehlschlägt, und den Wert TRUE, wenn die Bindeoperation erfolgreich ausgeführt wird.

Die Methode verwendet zwei Parameter. Beim ersten handelt es sich um einen String-Array zum Übergeben von Argumenten an das Dienstprogramm StaticBinder. Der zweite ist ein PrintWriter-Objekt, an das das Dienstprogramm Nachrichten und Ausnahmebedingungen ausgeben kann.

Es folgt ein Beispiel für einen Aufruf an die Methode bind():

StaticBinder binder = new StaticBinder ();
PrintWriter  out = new PrintWriter(
	  new FileWriter("BinderOutput.txt"));
String[] argsArray = {"-user","Benutzername","-password","Kennwort", 
	  "-url","JDBC-URL","-interface","Schnittstellenklasse"};
Boolean check=binder.bind(argsArray, out);

Beschreibungen der Optionen

-archive
Verwenden Sie diese Option, wenn Sie Ihre Anwendung in einer Archivdatei auf einem DB2-Server implementiert haben und SQL-Anweisungen durch das Ausführen von StaticBinder auf diesem Server binden wollen. Es werden folgende Archivtypen unterstützt: .ear-, .jar-, .war- und .zip-Dateien.
-bindOptions "Zeichenfolge_mit_Bindeoptionen"
Diese Optionen haben dieselbe Funktion wie die DB2-Vorkompilierungs- und Bindeoptionen mit denselben Namen. Wenn Sie Ihr Programm für die Ausführung auf einem System mit DB2 für z/OS vorbereiten, müssen Sie die Optionen für DB2 für z/OS angeben. Wenn Sie Ihr Programm für die Ausführung auf einem System mit DB2 für Linux, UNIX und Windows vorbereiten, müssen Sie Optionen für DB2 für Linux, UNIX und Windows angeben.

Die Syntax der Zeichenfolge lautet "Option_1 Wert_1 Option_2 Wert_2".

Eine Liste sowie eine Beschreibung dieser Optionen finden Sie in BIND command.
Die Bindeoption REOPT kann im pureQuery-Code nützlich sein. Sie können mit dieser Option Parametermarken in SQL-Anweisungen verwenden und dabei trotzdem DB2-Zugriffspfade optimieren. Informationen zum Verwenden dieser Option mit unterstützten DB2-Datenbanken finden Sie über die folgenden Links:
DBRM-Optionen
Mit dieser Option können Sie DBRM-Dateien generieren, anstatt Pakete zu erstellen. Diese Optionen gelten nur, wenn Sie DB2 für z/OS verwenden.

Nachdem das Dienstprogramm StaticBinder die DBRM-Dateien generiert hat, müssen Sie die Dateien in einen Datensatz kopieren. Der Standardname des DBRM-Datensatzes lautet Präfix.DBRMLIB.DATA. Dabei steht Präfix für das übergeordnete Qualifikationsmerkmal, das im TSO-Profil für den Benutzer angegeben ist. Präfix ist in der Regel Ihre Benutzer-ID in TSO.

Wenn der DBRM-Datensatz noch nicht vorhanden ist, müssen Sie ihn erstellen. Der DBRM-Datensatz benötigt Speicherplatz, um alle SQL-Anweisungen zu speichern, wobei zusätzlicher Speicherplatz für jeden Hostvariablennamen und für Headerdaten erforderlich ist. Die Headerdaten benötigen etwa zwei Datensätze für jedes DBRM (Database Request Module - Datenbankanforderungsmodul), 20 Byte für jeden SQL-Datensatz und 6 Byte für jede Hostvariable. Ein exaktes Format des DBRM finden Sie im DBRM-Zuordnungsmakro DSNXDBRM in der Bibliothek Präfix.SDSNMACS.

Im folgenden Syntaxdiagramm werden die Optionen für das Generieren von DBRM-Dateien beschrieben.

Syntaxdiagramm lesenSyntaxdiagramm überspringen
>>- -generateDBRM--+-TRUE--+-- -outputDBRMPath--Pfad-----------><
                   '-FALSE-'                           

-generateDBRM
Gibt an, ob DBRM-Dateien generiert werden sollen, anstatt Pakete zu erstellen. Wenn generateDBRM auf TRUE gesetzt ist, generiert das Dienstprogramm StaticBinder standardmäßig vier DBRM-Dateien, jeweils eine pro Isolationsstufe: CS, RR, RS, UR. Sie können jedoch nur eine DBRM-Datei generieren, wenn Sie die Option -isolationLevel angeben.

Der Stammname der generierten DBRM-Dateien ist der Stammpaketname, den Sie angeben, wenn Sie das Dienstprogramm Generator ausführen. Wenn dieser Name länger als sieben Zeichen ist, gibt StaticBinder eine Ausnahmebedingung aus.

-outputDBRMPath Pfad
Gibt das Verzeichnis an, in dem die generierte DBRM-Datei gespeichert werden soll. Der Standardwert ist das Verzeichnis, aus dem Sie das Dienstprogramm StaticBinder ausführen.
-differenceOnlyTRUE|FALSE
Gibt an, dass DB2-Pakete nicht ersetzt werden sollen, die Objektgruppennamen, Paketnamen und Konsistenztoken aufweisen, die mit diesen Werten für die entsprechenden Anweisungsgruppen innerhalb der pureQueryXML-Datei übereinstimmen, für die Sie das Dienstprogramm StaticBinder ausführen.

Beispiel: Sie führen das Dienstprogramm StaticBinder für eine pureQueryXML-Datei mit den Namen capture.pdqxml aus. Das Dienstprogramm erstellt die Pakete MYPKGA, MYPKGB und MYPKGC. Sie modifizieren anschließend die Anweisungsgruppe MYPKGA in capture.pdqxml und führen für diese Datei das Dienstprogramm Configure aus, wobei für die Option -cleanConfigure der Standardwert FALSE festgelegt ist. Das Dienstprogramm Configure ordnet der Anweisungsgruppe ein neues Konsistenztoken zu, weil die Gruppe geändert wurde. Wenn Sie das Dienstprogramm StaticBinder für capture.pdqxml erneut ausführen, um die neue Version von MYPKGA zu binden, geben Sie für -differenceOnly den Wert TRUE an. Das Dienstprogramm bindet nur MYPKGA und bindet die übrigen zwei Pakete nicht erneut.

Der Standardwert ist FALSE.
-grant "grantees(erste_ID,zweite_ID,...)"
Gibt die durch Kommata getrennte Liste der Berechtigten (in Klammern) an, denen Sie das Zugriffsrecht EXECUTE für Pakete erteilen wollen, die das Dienstprogramm StaticBinder erstellt. Wenn Sie diese Option nicht angeben, erteilt das Dienstprogramm StaticBinder dieses Zugriffsrecht nicht.
Syntaxdiagramm lesenSyntaxdiagramm überspringen
                             .-,--------------------.          
                             V                      |          
>>- -grant-- "--grantees--(----+-Berechtigungs-ID-+-+--) - "---><
                               '-PUBLIC-----------'            

grantees
Die durch Kommata getrennte Liste von Berechtigungs-IDs, denen Sie das Zugriffsrecht EXECUTE erteilen wollen. Stellen Sie sicher, dass die Berechtigungs-IDs, die Sie auflisten, für die von Ihnen verwendete DB2-Datenbank gültig sind.

Für DB2 Database für Linux, UNIX und Windows: Sie können die Schlüsselwörter USER, GROUP und ROLE verwenden. Informationen zu diesen Schlüsselwörtern finden Sie in GRANT (Package Privileges) statement.

Für DB2 für z/OS: Sie können das Schlüsselwort ROLE verwenden. Informationen zu diesem Schlüsselwort finden Sie in GRANT (package privileges).

Einschränkungen:

  • Sie können die Option -grant nicht verwenden, wenn der Wert der Option -generateDBRM TRUE ist.
  • In einer Optionsdatei können Sie die Option -grant entweder in der Zeile defaultOptions oder für mindestens einen einzelnen Eintrag in der Datei verwenden. Sie können -grant nicht an beiden Positionen in einer einzelnen Optionsdatei verwenden.
-interface Java-Paket.Schnittstellenklasse
Der Name der Schnittstelle oder Schnittstellen, für die das pureQuery-Dienstprogramm Generator eine Implementierungsklasse generiert hat, die SQL-Anweisungen enthält, die Sie in einem DB2-Paket binden möchten. Der Name muss das Java-Paket einschließen, in der sich die Klasse befindet. Das pureQuery-Dienstprogramm StaticBinder verwendet die Kombination aus dem Namen der Schnittstelle und dem Suffix Impl, um die zu verwendende Implementierungsklasse zu bestimmen.
Sie können -interface zusammen mit -optionsFile verwenden, wenn Sie wollen, dass das Dienstprogramm StaticBinder die folgenden zwei Aktionen ausführt:
  • Nur die SQL-Anweisungen in der angegebenen Schnittstelle oder den angegebenen Schnittstellen binden
  • Optionen in der Befehlszeile mit Optionen in der Optionsdatei für die angegebene Schnittstelle oder angegebenen Schnittstellen kombinieren

Wenn die Optionsdatei keine Einträge für die Schnittstelle enthält, verwendet das Dienstprogramm StaticBinder die Bindeoptionen, die sich in der Befehlszeile und in dem Eintrag 'defaultOptions' in der Optionsdatei befinden.

-isolationLevel CS | RR | RS | UR
Gibt an, dass Sie ein einzelnes DB2-Paket oder eine einzelne DBRM-Datei für eine bestimmte Isolationsstufe generieren möchten, anstatt ein DB2-Paket oder eine DBRM-Datei für jede der vier Isolationsstufen zu generieren.

Die Isolationsstufe gilt für alle SQL-Anweisungen, die im Paket enthalten sind. Wenn Sie eine Isolationsstufe über die Methode Connection.setTransactionIsolation() von IBM® Data Server Driver für JDBC und SQLJ definieren, ignoriert pureQuery diese Isolationsstufe für statisch ausgeführte Anweisungen.

UR
Gibt Uncommitted Read als Isolationsstufe an.
Das Dienstprogramm StaticBinder fügt dem Namen des erstellten Pakets bzw. der erstellten DBRM-Datei 1 hinzu, sofern Sie nicht die Option -forceSingleIsolationLevel bei der Ausführung des Dienstprogramms Generator verwendet haben.
CS
Gibt Cursor Stability als Isolationsstufe an.
Das Dienstprogramm StaticBinder fügt dem Namen des erstellten Pakets bzw. der erstellten DBRM-Datei 2 hinzu, sofern Sie nicht die Option -forceSingleIsolationLevel bei der Ausführung des Dienstprogramms Generator verwendet haben.
RS
Gibt Read Stability als Isolationsstufe an. Read Stability stellt sicher, dass die Ausführung von SQL-Anweisungen im Paket von anderen Anwendungsprozessen für Zeilen isoliert ist, die von der Anwendung gelesen und geändert werden.
Das Dienstprogramm StaticBinder fügt dem Namen des erstellten Pakets bzw. der erstellten DBRM-Datei 3 hinzu, sofern Sie nicht die Option -forceSingleIsolationLevel bei der Ausführung des Dienstprogramms Generator verwendet haben.
RR
Gibt Repeatable Read als Isolationsstufe an.
Das Dienstprogramm StaticBinder fügt dem Namen des erstellten Pakets bzw. der erstellten DBRM-Datei 4 hinzu, sofern Sie nicht die Option -forceSingleIsolationLevel bei der Ausführung des Dienstprogramms Generator verwendet haben.
Java-Paket.Schnittstelle (am Zeilenanfang in einer Optionsdatei)
Gibt an, dass die Optionen in der Zeile nur für die SQL-Anweisungen in der angegebenen Schnittstelle gelten. Diese Optionen setzen Optionen außer Kraft, die Sie als Standardwerte angeben.
Sie müssen den Namen der Schnittstelle mit dem Namen des Java-Pakets qualifizieren, zu dem die Schnittstelle gehört.
-optionsFile Dateiname
Der Name der Datei, einschließlich ihres absoluten oder relativen Pfads, in der die Schnittstellen aufgelistet werden, die die zu bindenden SQL-Anweisungen enthalten.
-password Kennwort
Das Kennwort, das zum Herstellen einer Verbindung zur Datenquelle verwendet werden soll.
Traceoptionen
Sie können die Datei, in der Nachrichten protokolliert werden sollen, und die zu protokollierende Informationsebene angeben.
Syntaxdiagramm lesenSyntaxdiagramm überspringen
>>-+------------------------+--+---------------------------+---><
   '- -traceFile--Dateiname-'  |               .-OFF-----. |   
                               '- -traceLevel--+-ALL-----+-'   
                                               +-SEVERE--+     
                                               +-WARNING-+     
                                               +-INFO----+     
                                               +-CONFIG--+     
                                               +-FINE----+     
                                               +-FINER---+     
                                               '-FINEST--'     

-traceFile Dateiname
Gibt den absoluten oder relativen Pfad und den Namen der Datei an, die zum Protokollieren von Informationen zur Operation verwendet werden soll.
Falls die Datei bereits vorhanden ist, hängt pureQuery neue Nachrichten an den vorhandenen Inhalt der Datei an. Standardmäßig werden die Einträge in 'System.err' geschrieben.
-traceLevel OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST|ALL
Gibt den zu protokollierenden Informationstyp an. Die Standardstufe ist OFF. Wenn Sie keine Datei angeben, in die die Protokolleinträge geschrieben werden sollen, und Sie diese Option auf einen anderen Wert als OFF setzen, werden die Einträge in 'System.err' geschrieben.
-url Verbindungs-URL
Die JDBC-Typ-4-URL für die Verbindung zur Datenbank.
-username Benutzer-ID
Die Benutzer-ID, die zum Herstellen einer Verbindung zur Datenquelle verwendet werden soll.
-verifyPackages DETAIL|SUMMARY
Gibt an, ob das Dienstprogramm StaticBinder einen Bericht über die Pakete erstellt, die für die SQL-Anweisungen, die der Schnittstelle oder Implementierungsklasse zugeordnet sind, vorhanden oder nicht vorhanden sind. Wenn Sie diese Option verwenden, bindet das Dienstprogramm StaticBinder keine Pakete.

Beispiel: Sie führen das Dienstprogramm Generator für eine Schnittstelle mit dem Namen OrdersData aus, die Methoden für das Abfragen und Aktualisieren der Tabelle ORDERS deklariert. Das Dienstprogramm Generator erstellt die Implementierungsklasse OrdersDataImpl.

Beim Ausführen des Dienstprogramms haben Sie Werte für die Optionen -collection, -pkgVersion und -rootPkgName angegeben und das Dienstprogramm hat diese Werte in der Implementierungsklasse gespeichert. Sie führen das Dienstprogramm StaticBinder unter Angabe des Namens dieser Klasse aus und das Dienstprogramm erstellt DB2-Pakete.

Zu einem späteren Zeitpunkt möchten Sie eine Liste der Pakete anzeigen, die das Dienstprogramm StaticBinder anhand der Implementierungsklasse erstellt hat. Beim Ausführen des Dienstprogramms können Sie die Option -verifyPackages mit dem Wert DETAIL verwenden und wiederum den Namen der Klasse angeben.

Wenn die Werte für die Optionen -collection, -pkgVersion und -rootPkgName dieselben sind wie bei der vorherigen Ausführung des Dienstprogramms StaticBinder, findet das Dienstprogramm die Pakete und listet sie auf.

Wenn Sie jedoch das Dienstprogramm Generator für die Schnittstelle OrdersData ausführen würden, nachdem Sie zunächst das Dienstprogramm StaticBinder ausgeführt und die Werte für -collection, -pkgName und -rootPkgName geändert haben, würde das Dienstprogramm StaticBinder keine Pakete finden, die mit den neuen Werten für diese Optionen übereinstimmen. Im zugehörigen Bericht des Dienstprogramms StaticBinder würde stehen, dass die gesuchten Pakete nicht vorhanden sind.

Die Option -verifyPackages funktioniert unter der Voraussetzung, dass Sie, nachdem Sie zuvor die Implementierungsklasse generiert und das Dienstprogramm StaticBinder für die betreffende Klasse oder die zugeordnete Schnittstelle ausgeführt haben, das Dienstprogramm Generator nicht nochmals für die Schnittstelle ausgeführt und andere Werte für -collection, -pkgVersion und -rootPkgName angegeben haben.

Sie können diese Option zusammen mit der Option -bindOptions angeben. Das Dienstprogramm StaticBinder bindet jedoch keine Pakete. Verwenden Sie -bindOptions nur dann zum Angeben der Objektgruppe für die Pakete, die Sie verifizieren möchten, wenn Sie diese Option beim Erstellen der Pakete für die Angabe der Objektgruppe verwendet haben.

DETAIL
Erstellt einen Bericht mit den folgenden Informationen auf Basis der Werte von -collection, -pkgVersion und -rootPkgName:
  • Welche Pakete nicht vorhanden sind.
  • Welche Pakete vorhanden sind. Für jedes Paket werden im Bericht der Name, das Konsistenztoken, die Zeitmarke und die Isolationsstufe aufgelistet.
  • Die Anzahl Pakete, die vorhanden bzw. nicht vorhanden sind.
SUMMARY
Erstellt einen Bericht, in dem auf Basis der Werte für -collection, -pkgVersion und -rootPkgNamevon die Pakete aufgezählt werden, die vorhanden bzw. nicht vorhanden sind.

Feedback