Edition ou fusion des fichiers pureQueryXML pour l'optimisation client

Vous pouvez modifier des fichiers pureQueryXML contenant des instructions SQL capturées à partir d'applications non-pureQuery. Vous pouvez également fusionner deux fichiers ou plus.

Lorsque vous ouvrez un fichier pureQueryXML pour l'édition, l'éditeur emploie l'utilitaire pureQuery Configure pour valider les modifications que vous apportez. L'utilitaire Configure peut valider vos modifications uniquement lorsque vous enregistrez le fichier.

Cases de l'éditeur pureQueryXML

AllowStaticRowsetCursors
Spécifie si le curseur associé à une instruction SELECT est un curseur d'ensemble de lignes lorsque l'instruction est exécutée en mode statique, si vous utilisez une source de données DB2 Universal Database for z/OS Version 8 (mode nouvelle fonction) ou DB2 Version 9.1 for z/OS et le IBM® Data Server Driver pour JDBC et SQLJ pour vous connecter à cette source de données.

Pour autoriser les instructions SQL à utiliser des curseurs d'ensemble de lignes lorsque pureQurey les exécute de façon statique, les conditions suivantes doivent être remplies :

  • Les instructions capturées doivent être des instructions SELECT.
  • Aucune de ces instructions n'est exécutée par une procédure mémorisée.
  • Aucune des colonnes des résultats de requête ne contiennent des données de type LOB ou XML.
  • Les curseurs ouverts par les instructions sont en lecture seule. Si un curseur statique actualisable utilise des ensembles de lignes, le résultat est imprévisible.

    pureQuery considère qu'une instruction est actualisable si l'une de ces conditions est vraie :

    • L'attribut concurrent est défini sur java.sql.ResultSet.CONCUR_UPDATABLE.
    • L'instruction SQL contient la clause FOR UPDATE.
    pureQuery considère qu'une instruction est en lecture seule si elle n'est pas actualisable.

Si une instruction SELECT se conformant à ces conditions ne retourne qu'une ligne, n'utilisez pas cette option pour l'instruction. L'utilisation d'un curseur d'ensemble de lignes pour une instruction SELECT ne retournant qu'une seule ligne risque de ne pas être rentable.

Pour plus d'informations sur l'utilisation de l'option -allowStaticRowsetCursors de l'utilitaire Configure, voir Syntaxe des entrées du fichier Default.genProps permettant de configurer l'exécution en mode statique d'instructions SQL dans des applications d'API différentes de pureQuery.

Si vous voulez sélectionner la case AllowStaticRowsetCursors pour les instructions SELECT se conformant aux conditions et que vous envisagez d' utiliser l'option -allowStaticRowsetCursors de l'utilitaire Configure, suivez ces étapes avant de cocher la case :

  1. Dans le fichier Default.genProps de votre projet, spécifiez l'option -allowStaticRowsetCursors pour votre fichier pureQueryXML.
  2. Enregistrez le fichier Default.genProps pour exécuter l'utilitaire Configure dans le fichier pureQueryXML.
  3. Dans le fichier Default.genProps, supprimez l'option -allowStaticRowsetCursors de votre fichier pureQueryXML.
  4. Enregistrez le fichier Default.genProps pour exécuter l'utilitaire Configure dans le fichier pureQueryXML.
Lier
Cochez la case Lier qui apparaît en regard d'une instruction SQL dans l'éditeur pureQueryXML si vous voulez que l'utilitaire StaticBinder définisse des accès pour cette instruction lorsque vous exécutez l'utilitaire sur le fichier.
Avertissement : pureQuery ne prend pas en charge l'exécution statique des instructions composées, à moins qu'elles ne commencent par BEGIN ATOMIC.
Configurer
Si vous changez un ensemble d'instructions obligeant l'utilitaire Configure à valider le changement, l'éditeur change la valeur de la colonne Configurer en REQUIRED dans cet ensemble d'instructions. Cette valeur correspond à la valeur REQUIRED dans l'attribut configureStatus de la balise <statementSet> du fichier. Lorsque vous enregistrez le fichier, l'utilitaire Configure valide la modification.
Une fois ce processus terminé par l'utilitaire Configure, la valeur de la colonne Configurer est vide. Cela signifie qu'aucune modification ne doit être validée par l'utilitaire Configure. Le champ vide correspond à la valeur AUTO dans l'attribut configureStatus de la balise <statementSet> du fichier. Toutefois, l'utilitaire Configure peut modifier l'ensemble d'instructions si cela est nécessaire lors de la validation des modifications apportées à d'autres ensembles d'instructions.

Si la valeur de la colonne Configurer d'un ensemble d'instructions est vide et que vous avez terminé d'apporter des changements à cet ensemble, vous pouvez paramétrer la valeur sur FINAL. Cette valeur correspond à la valeur FINAL dans l'attribut configureStatus de la balise <statementSet> du fichier. L'utilitaire Configure ne modifie plus l'ensemble. Tant que le valeur est FINAL, vous ne pouvez pas modifier l'ensemble. Pour le modifier à nouveau, vous devez supprimer la valeur FINAL et laisser le champ vide.

Informations affichées lorsqu'une instruction SQL est sélectionnée

Lorsqu'une instruction SQL est sélectionnée, des informations relatives à l'instruction SQL s'affichent et l'instruction SQL est copiée dans l'éditeur SQL.

Informations relatives au registre spécial
Affichent les valeurs de registre spécial associées à l'instruction SQL lorsque cette dernière a été capturée par l'optimisation de client pureQuery.
Schéma par défaut, chemin par défaut
Affichent les valeurs de schéma par défaut et de chemin par défaut associées à l'instruction SQL lorsque cette dernière a été capturée par l'optimisation de client pureQuery.

Commentaires