Syntaxe des entrées du fichier Default.bindProps permettant de configurer l'exécution en mode statique d'instructions SQL dans des applications d'API différentes de pureQuery

Le fichier Default.bindProps vous permet de spécifier les options déterminant la façon dont les accès des instructions SQL doivent être définis dans les modules DB2.

Cliquez deux fois sur ce fichier pour l'ouvrir avec un éditeur dans le plan de travail. Il se trouve dans le dossier pureQueryFolder de votre projet Java.

Dans ce fichier, vous pouvez spécifier des options qui s'appliquent à tous les fichiers pureQueryXML inclus dans votre projet. Vous pouvez également spécifier des options propres à chaque fichier pureQueryXML.

Vous pouvez ajouter des commentaires à ce fichier. Chaque commentaire doit commencer par le symbole #.

Lorsque vous créez ou éditez des entrées, il vous est possible d'afficher une aide en appuyant sur les touches CTRL+ESPACE (ou sur votre propre combinaison de touches si vous avez changé la combinaison par défaut).

Pour comprendre les diagrammes de syntaxe, voir Comment lire les diagrammes de syntaxe.

Le diagramme suivant illustre la syntaxe admise pour la définition des options par défaut dans ce fichier.

Lire le diagrammeSauter le diagramme
>>-defaultOptions--=-------------------------------------------->

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

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

>--+--------------------------+--+--------------------------+--><
   '- -isolationLevel--+-CS-+-'  |                      (3) |   
                       +-RR-+    '-| Options de trace |-----'   
                       +-RS-+                                   
                       '-UR-'                                   

Remarques:
  1. Pour la syntaxe, voir la description de ces options.
  2. Pour la syntaxe, voir la description de cette option.
  3. Pour la syntaxe, voir la description de ces options.

Le diagramme ci-après illustre la syntaxe admise pour la définition des options individuellement applicables aux différents fichiers pureQueryXML répertoriés dans le fichier.

Lire le diagrammeSauter le diagramme
>>-+-fichier_pureQueryXML----------------------+--=------------->
   '-fichier-pureQueryXML--:--nom-package-base-'      

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

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

>--+--------------------------+--------------------------------><
   '- -isolationLevel--+-CS-+-'   
                       +-RR-+     
                       +-RS-+     
                       '-UR-'     

Remarques:
  1. Pour la syntaxe, voir la description de ces options.
  2. Pour la syntaxe, voir la description de cette option.
-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, and 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.
defaultOptions
Indique que les options figurant sur la ligne s'appliquent aux instructions SQL de tous les fichiers pureQueryXML répertoriés dans ce fichier. Une seule ligne du fichier peut commencer par ce mot clé.
-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, and 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 Generator.
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 package ou au fichier DBRM créé, à moins que vous ayez utilisé l'option -forceSingleBindIsolation lors de l'exécution de l'utilitaire Generator.
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 Generator.
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 package ou au fichier DBRM créé, à moins que vous ayez utilisé l'option -forceSingleBindIsolation lors de l'exécution de l'utilitaire Generator.
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.
fichier_pureQueryXML
Indique le nom du fichier pureQueryXML auquel s'appliquent les options placées sur cette ligne du fichier d'options. Les options que vous indiquez sur cette ligne viennent remplacer les options que vous indiquez sur la ligne defaultOptions.
Ce fichier doit avoir l'extension .pdqxml ou .xml. Il doit s'agir d'une ressource placée dans le chemin d'accès aux classes de l'application, ou bien vous devez indiquer le chemin complet ou relatif de ce fichier.
fichier-pureQueryXML:nom-package-base
Indique le nom du fichier pureQueryXML et un ensemble d'instructions SQL de ce fichier, auxquels s'appliquent les options placées sur cette ligne du fichier d'options. Les options que vous indiquez sur cette ligne viennent remplacer les options que vous indiquez sur la ligne defaultOptions.

Le fichier doit avoir l'extension .pdqxml ou .xml. Il doit s'agir d'une ressource placée dans le chemin d'accès aux classes de l'application, ou bien vous devez indiquer le chemin complet ou relatif de ce fichier.

Le nom de base du package est la valeur de l'attribut name de l'élément package qui décrit le package dans le fichier pureQueryXML. Le nom de base est constitué de deux parties :
  • Le nom du package racine
  • Tout caractère que l'utilitaire Configure ajoute au nom du package racine lorsque plusieurs noms de package sont nécessaires. Par exemple, l'utilitaire crée plusieurs packages lorsque le nombre d'instructions SQL d'un ensemble d'instructions dépasse la valeur de l'option -sqlLimit de l'utilitaire Configure.

Si un fichier d'options contient une entrée pour un package dans un fichier pureQueryXML ainsi qu'une entrée pour l'ensemble de ce fichier pureQueryXML, l'ordre d'apparition des entrées détermine leurs résultats.

  • Cet exemple définit les accès de l'ensemble du fichier pureQueryXML puis redéfinit les accès du package MYPKGA.
    C:/dir/captureFile.pdqxml = -bindOptions "QUALIFIER NULLID"
    C:/dir/captureFile.pdqxml:MYPKGA = -bindOptions "QUALIFIER DB2ADMIN"
    L'utilitaire StaticBinder crée des packages pour tous les ensembles d'instructions du fichier pureQueryXML et tous ces packages utilisent le qualificatif NULLID. L'utilitaire StaticBinder redéfinit ensuite les accès de MYPKGA avec le qualificatif DB2ADMIN.
  • Cet exemple définit les accès du package MYPKGA puis redéfinit les accès de tous les packages du fichier pureQueryXML.
    C:/dir/captureFile.pdqxml:MYPKGA = -bindOptions "QUALIFIER DB2ADMIN"
    C:/dir/captureFile.pdqxml = -bindOptions "QUALIFIER NULLID"
    L'utilitaire StaticBinder crée le package MYPKGA avec le qualificatif DB2ADMIN. Il définit ensuite les accès de tous les packages et redéfinit les accès de MYPKGA au cours du même processus avec le qualificateur NULLID.

    Toutefois, vous pouvez utiliser l'option -differenceOnly sur la deuxième ligne pour empêcher la redéfinition des accès de MYPKGA par l'utilitaire StaticBinder.

    C:/dir/captureFile.pdqxml:MYPKGA = -bindOptions "QUALIFIER DB2ADMIN"
    C:/dir/captureFile.pdqxml = -bindOptions "QUALIFIER NULLID" -differenceOnly TRUE
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 n'indiquez pas de fichier pour l'écriture des entrées de journal et si vous sélectionnez toute valeur autre que OFF pour cette option, les entrées sont écrites dans la vue Console.

Commentaires