Syntaxe des options par défaut d'un fichier d'options de l'utilitaire StaticBinder pour l'optimisation client

Ce diagramme de syntaxe affiche les options par défaut que vous pouvez définir pour tous les fichiers pureQueryXML figurant dans un fichier d'options.
Lire le diagrammeSauter le diagramme
                     (1)   
>>-defaultOptions--=-------------------------------------------->

>--+--------------------------------------------------------------------------------------------------------------------------------------+-->
   |  (2)   (3)                                                                                                                           |   
   '------------- -url--jdbc--:--db2--:--//--serveur--+---------+--/--base_de_données-- -username--ID-utilisateur-- -password--motdepasse-'   
                                                      '-:--port-'                                                                             

>--+-----------------------------------------------------+------>
   '-+- -bindOptions-- -"--options_définition_accès--"-+-'   
     |                  (4)                            |     
     '-| options DBRM |--------------------------------'     

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

>--+--------------------------+--+--------------------------+--->
   '- -isolationLevel--+-CS-+-'  |                .-FALSE-. |   
                       +-RR-+    '- -showDetails--+-TRUE--+-'   
                       +-RS-+                                   
                       '-UR-'                                   

                         .-NOT_SET------.   
>-- -statementBindError--+-REMOVE-------+----------------------->
                         '-MARK_INVALID-'   

>--+--------------------------+--+--------------------------+--><
   |                      (6) |  |                .-FALSE-. |   
   '-| Options de trace |-----'  '- -validateXml--+-TRUE--+-'   

Remarques:
  1. Vous pouvez spécifier les options dans n'importe quel ordre.
  2. Lorsque vous utilisez l'option -bindOptions, si vous n'indiquez pas l'URL, l'ID utilisateur et le mot de passe, vous devez les spécifier dans la ligne de commande ou dans les entrées de chaque fichier pureQueryXML.
  3. Les options -url, -username- et -password ne sont pas nécessaires si vous créez uniquement des fichiers DBRM.
  4. Pour la syntaxe, voir la description de ces options.
  5. Pour la syntaxe, voir la description de cette option.
  6. Pour la syntaxe, voir la description de ces options.

Descriptions des options

-bindOptions "chaîne_options_définition_accès"
Ces options sont équivalentes aux options DB2 de précompilation et de définition d'accès dont les noms sont identiques. La chaîne peut avoir l'un des formats suivants :
  • "option_1 valeur_1 option_2 valeur_2"
  • "option_1(valeur_1) option_2(valeur_2)"

La valeur de chaque option ne doit pas contenir d'espaces.

Pour la liste et les descriptions de ces options, voir Commande BIND.

Si vous utilisez l'option de définition d'accès CONCURRENTACCESSRESOLUTION dans DB2 Version 9.7 for Linux, UNIX et Windows, l'option s'applique à toutes les instructions se trouvant dans des packages associés au niveaux d'isolement CS et RR. Cette option, qui s'applique uniquement à ces deux niveaux d'isolement, permet aux applications de trouver la dernière valeur validée dans les lignes verrouillées par les autres applications.
options DBRM
Utilisez les options DBRM pour générer des fichiers DBRM plutôt que de créer des packages. Ces options ne sont applicables que si vous utilisez DB2 for z/OS.

Une fois les fichiers DBRM créés par l'utilitaire StaticBinder, vous devez les copier dans un fichier. Le nom du fichier DBRM est préfixe.DBRMLIB.DATA, où préfixe représente le qualificatif de haut niveau qui est indiqué dans le profil TSO de l'utilisateur. En règle générale, préfixe correspond à votre ID utilisateur dans TSO.

Si le fichier DBRM n'existe pas, vous devez le créer. Ce fichier doit disposer de suffisamment d'espace pour contenir toutes les instructions SQL, avec un supplément d'espace pour chaque nom de variable hôte ainsi qu'un certain nombre d'informations d'en-tête. Les informations d'en-tête requièrent environ deux enregistrements pour chaque package d'interrogation de base de données (DBRM), et il faut prévoir 20 octets pour chaque enregistrement SQL et 6 octets pour chaque variable hôte. Pour le format DBRM précis, reportez-vous à la macro de mappage DBRM, DSNXDBRM, dans la bibliothèque préfixe.SDSNMACS.

Le diagramme de syntaxe suivant décrit les options permettant de générer des fichiers DBRM.

Lire le diagrammeSauter le diagramme
                   .-FALSE-.                             
>>- -generateDBRM--+-TRUE--+-- -outputDBRMPath--chemin---------><

-generateDBRM TRUE|FALSE
Indique si des fichiers DBRM doivent être générés à la place de packages. Par défaut, si generateDBRM prend la valeur TRUE, l'utilitaire StaticBinder génère quatre fichiers DBRM, c'est-à-dire un pour chaque niveau d'isolement : CS, RR, RS et UR. Il vous est toutefois possible de générer un unique fichier DBRM en spécifiant l'option -isolationLevel.

Le nom racine des fichiers DBRM générés est le nom de package racine que vous indiquez lorsque vous exécutez l'utilitaire Configure.

La valeur par défaut est FALSE.

-outputDBRMPath chemin
Indique le répertoire dans lequel les fichiers du package d'interrogation de base de données seront sauvegardés. La valeur par défaut est le répertoire à partir duquel vous exécutez l'utilitaire StaticBinder.
-differenceOnlyTRUE|FALSE
Indique de ne pas remplacer les packages DB2 ayant des noms de collection, de package et des marques de cohérence qui correspondent à ces valeurs pour les ensembles d'instructions se trouvant dans le fichier pureQueryXML sur lequel vous exécutez l'utilitaire StaticBinder.

Par exemple, supposez que vous avez exécuté l'utilitaire StaticBinder sur un fichier pureQueryXML appelé capture.pdqxml. L'utilitaire crée les package MYPKGA, MYPKGB et MYPKGC. Vous modifiez ensuite l'ensemble d'instructions MYPKGA dans capture.pdqxml avec le plan de travail et vous exécutez l'utilitaire Configure sur ce fichier, avec l'option -cleanConfigure associée à sa valeur par défaut FALSE. L'utilitaire Configure affecte une nouvelle marque de cohérence à l'ensemble d'instructions car ce jeu a été modifié. Lorsque vous exécutez à nouveau l'utilitaire StaticBinder sur capture.pdqxml pour définir les accès de la nouvelle version de MYPKGA, vous spécifiez -differenceOnly TRUE. L'utilitaire redéfinit uniquement les accès de MYPKGA et non ceux des deux autres packages.

La valeur par défaut est FALSE.
-grant "grantees(premier_ID,deuxième_ID,...)"
Donne la liste (entre parenthèses avec virgules de séparation) des bénéficiaires d'autorisations auxquels vous voulez accorder le privilège EXECUTE pour les modèles créés par l'utilitaire StaticBinder. Si vous n'utilisez pas cette option, l'utilitaire StaticBinder n'accorde pas ce privilège.
Lire le diagrammeSauter le diagramme
                             .-,-------------------.          
                             V                     |          
>>- -grant-- "--grantees--(----+-ID-autorisation-+-+--) - "----><
                               '-PUBLIC----------'            

grantees
Liste des ID autorisation, séparés par des virgules, auxquels vous voulez accorder le privilège EXECUTE. Assurez-vous que les ID autorisation répertoriés sont valides pour la base de données DB2 que vous utilisez.

Pour DB2 Database for Linux, UNIX et Windows : vous pouvez utiliser les mots clés USER, GROUP et ROLE. Pour tout détail concernant ces mots clés, voir GRANT (Package Privileges) statement.

Pour DB2 for z/OS : vous pouvez utiliser le mot clé ROLE. Pour tout détail concernant ce mot clé, voir GRANT (package privileges).

Restriction : Vous ne pouvez pas utiliser l'option -grant lorsque l'option -generateDBRM a pour valeur TRUE.

-isolationLevel CS | RR | RS | UR
Indique que vous souhaitez générer un package DB2 unique ou un fichier DBRM pour un niveau d'isolement particulier, plutôt qu'un package DB2 ou un fichier DBRM pour les quatre niveaux d'isolement.

Le niveau d'isolement s'applique à toutes les instructions SQL du package. Si vous définissez un niveau d'isolement à l'aide de la méthode Connection.setTransactionIsolation() du pilote IBM® Data Server Driver for JDBC and SQLJ, pureQuery ignore ce niveau d'isolement pour les instructions exécutées de manière statique.

UR
Indique le niveau d'isolement Lecture non validée.
L'utilitaire StaticBinder ajoute la valeur 1 au nom du package ou du fichier DBRM créé, à moins que vous ayez utilisé l'option -forceSingleBindIsolation lors de l'exécution de l'utilitaire Configure.
CS
Indique le niveau d'isolement Lecture non reproductible.
L'utilitaire StaticBinder ajoute la valeur 2 au nom du package ou du fichier DBRM créé, à moins que vous ayez utilisé l'option -forceSingleBindIsolation lors de l'exécution de l'utilitaire Configure.
RS
Indique le niveau d'isolement Lecture stable. La lecture stable garantit l'exécution isolée des instructions SQL du package par rapport aux autres processus de l'application pour les lignes qui sont lues et modifiées par cette application.
L'utilitaire StaticBinder ajoute la valeur 3 au nom du package ou du fichier DBRM créé, à moins que vous ayez utilisé l'option -forceSingleBindIsolation lors de l'exécution de l'utilitaire Configure.
RR
Indique le niveau d'isolement Lecture reproductible.
L'utilitaire StaticBinder ajoute la valeur 4 au nom du package ou du fichier DBRM créé, à moins que vous ayez utilisé l'option -forceSingleBindIsolation lors de l'exécution de l'utilitaire Configure.
-password mot_de_passe
Mot de passe à utiliser pour établir la connexion à la source de données.
-showDetails TRUE|FALSE
Indique si l'utilitaire StaticBinder doit afficher des informations détaillées sur les packages DB2 qu'il produit et sur les instructions SQL contenues dans les fichiers pureQueryXML qu'il traite.
La valeur par défaut est false.
-statementBindError NOT_SET|MARK_INVALID|REMOVE
Indique comment l'utilitaire StaticBinder gère les instructions SQL dans le fichier pureQueryXML lorsque le processus de liaison renvoie une erreur SQL à l'instruction. Il n'existe pas de valeur par défaut. Si l'option n'est pas définie, l'utilitaire StaticBinder signale les instructions SQL qui renvoient une erreur SQL pendant le processus de liaison à mesure qu'elles se manifestent. La liste suivante décrit les valeurs prises en charge et la manière dont les instructions SQL sont gérées :
NOT_SET
Indique que les instructions SQL du fichier pureQueryXML ne sont pas modifiées. Cette valeur correspond à la valeur par défaut.
MARK_INVALID
Indique que le fichier pureQueryXML est mis à jour afin de signaler que l'instruction SQL est non valide lorsque des tentatives de liaison génèrent une erreur SQL. Les erreurs SQL et les instructions SQL qui sont marquées comme étant non valides sont affichées à la fin de l'opération de liaison de l'ensemble d'instructions contenant les instructions.

Les instructions SQL qui ont été précédemment marquées comme étant non valides n'apparaissent pas dans le rapport.

Vous pouvez restaurer les instructions SQL marquées comme étant non valides à l'aide de l'option de configuration -restoreInvalidSQLForce. Vous pouvez supprimer des instructions à l'aide de l'option -removeInvalidSQL.

REMOVE
Indique que l'instruction SQL est supprimée du fichier pureQueryXML lorsque la tentative de liaison génère une erreur SQL. Les erreurs SQL et les instructions SQL qui sont supprimées sont affichées à la fin de l'opération de liaison de l'ensemble des instructions contenant les instructions. Les instructions SQL qui ont été précédemment marquées comme étant non valides sont aussi supprimées.
ATTENTION :
Si vous utilisez cette option avec la valeur MARK_INVALID ou REMOVE, votre fichier pureQueryXML peut être modifié. L'utilitaire met à jour le fichier afin de marquer une instruction SQL comme étant non valide ou supprimer l'instruction du fichier.

Si l'option -statementBindError est spécifiée avec la valeur MARK_INVALID ou REMOVE, les fichiers pureQueryXML doivent être accessibles en écriture. Si l'utilitaire StaticBinder ne peut pas mettre le fichier à jour, une erreur s'affiche et le fichier n'est pas traité.

Les éléments suivants affectent la capacité de l'utilitaire StaticBinder à détecter des instructions SQL non valides :
  • La spécification de l'option StaticBinder -differenceOnly avec la valeur TRUE. L'utilitaire StaticBinder n'essaie pas de lier toutes les instructions SQL. Il détecte les instructions SQL non valides dans les ensembles d'instructions qu'il n'essaie pas de lier.
  • La spécification de l'option de liaison SQLERROR (CONTINUE) ou VALIDATE (RUN) avec l'option StaticBinder -bindOptions. Si l'une des options BIND est indiquée, les diagnostics DB2 devant être signalés en tant qu'erreurs SQL sont signalés à la place comme avertissements SQL. L'utilitaire StaticBinder ne reconnaît pas les instructions SQL comme étant des instructions non valides lorsque les diagnostics signalent des avertissements SQL.

L'option -statementBindError n'est pas prise en charge lors de la liaison des classes d'implémentation de l'interface pureQuery DAO (Data Access Object). Si l'utilitaire StaticBinder n'est pas exécuté pour lier une classe d'implémentation et que l'option est spécifiée avec la valeur MARK_INVALID ou REMOVE, l'utilitaire affiche un avertissement et n'essaie pas de lier les classes.

Remarque : Les instructions SQL non valides sont des instructions qui renvoient une erreur SQL lors d'une tentative de liaison. Toutefois, des modifications peuvent être apportées à un objet de base de données afin que les instructions SQL ne référencent pas cet objet comme étant non valide. Ces modifications risquent d'affecter l'application qui exécute l'instruction SQL. Par exemple : une instruction est non valide si la définition d'une colonne type, référencée par l'instruction, passe de VARCHAR(20) à VARCHAR(100).
Options de trace
Vous pouvez demander à ce que le fichier journalise les messages et préciser le niveau d'information à journaliser.
Lire le diagrammeSauter le diagramme
>>-+--------------------------+--------------------------------->
   '- -traceFile--nom_fichier-'   

>--+---------------------------+-------------------------------><
   |               .-OFF-----. |   
   '- -traceLevel--+-ALL-----+-'   
                   +-SEVERE--+     
                   +-WARNING-+     
                   +-INFO----+     
                   +-CONFIG--+     
                   +-FINE----+     
                   +-FINER---+     
                   '-FINEST--'     

-traceFile nom_fichier
Indique le chemin absolu ou relatif ainsi que le nom du fichier à utiliser pour la journalisation des informations relatives à l'opération.
Si le fichier existe déjà, pureQuery ajoute les nouveaux messages à la suite des messages déjà placés dans ce fichier. Par défaut, les entrées sont écrites dans System.err.
-traceLevel OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST|ALL
Indique le type d'informations à journaliser. Le niveau par défaut est OFF. Si vous ne spécifiez pas de fichier dans lequel écrire les entrées de journal et que vous associez cette option à une valeur autre qu'OFF, les entrées sont écrites dans System.err.
-url URL_connexion
URL JDBC de type 4 pour la connexion à la base de données.
Si vous liez des instructions SQL qui utilisent des marqueurs de paramètre nommés, vous devez indiquer la propriété enableNamedParameterMarkers avec la valeur 1 lorsque vous définissez la connexion à la source de données. Dans l'exemple suivant, l'option -url permet de se connecter à la base de données SAMPLE sur testserver.test.com et de définir la propriété enableNamedParameterMarkers:
-url jdbc:db2://localhost:50000/SAMPLE:enableNamedParameterMarkers=1;
-username ID-utilisateur
ID utilisateur à indiquer pour établir la connexion à la source de données.
-validateXml TRUE|FALSE
Indique si la validation de schéma XML est effectuée dans les fichiers pureQueryXML en entrée à l'aide du schéma pureQueryXML. Si la valeur est définie sur TRUE, la validation est effectuée. Si la valeur est définie sur FALSE ou si l'option n'est pas définie, la validation n'est pas effectuée.

La réussite ou l'échec de la validation du schéma XML est déterminée et rapportée dans chaque fichier en entrée. Si un fichier en entrée échoue, l'exécution de l'utilitaire StaticBinder ne s'arrête pas et les fichiers ultérieurs seront traités.

Si un fichier pureQueryXML échoue lors de la validation de schéma, les packages contenus dans ce fichier ne seront pas liés. La première erreur de validation de schéma et l'échec de liaison pour le fichier sont reportés.

Seules les versions actuelle ou précédente des fichiers pureQueryXML sont validées (version 4 ou 3). Si une version antérieure de pureQueryXML est détectée, la validation ne s'effectue pas sur ce fichier.


Commentaires