Capture d'instructions SQL à partir d'un fichier avec la commande db2cli

La commande DB2 db2cli permet d'exécuter ou de préparer les instructions SQL d'un fichier et de capturer les instructions d'un fichier pureQueryXML.

Avant de commencer

Avant d'exécuter les instructions SQL avec la commande db2cli, créez les tables auxquelles les instructions SQL font référence.

Vous devez avoir activé l'optimisation client pureQuery pour le pilote de base de données qui se connecte à la base de données.

Pourquoi et quand exécuter cette tâche

Pour déterminer comment une application exécute des instructions SQL avec l'optimisation client pureQuery, vous devez capturer les instructions dans un fichier pureQueryXML. La principale méthode de capture d'une instruction SQL consiste à activer l'application avec l'optimisation client pureQuery et à capturer les instructions SQL lors de l'exécution de l'application. Vous pouvez également capturer des instructions SQL en exécutant la commande db2cli.

Procédure

Pour exécuter des instructions SQL dans une base de données DB2 et les capturer dans un fichier pureQueryXML :

  1. Créez le fichier texte qui doit contenir les instructions SQL.
  2. Exécutez la commande db2cli pour valider les instructions SQL.
    Exécutez la commande et indiquez la connexion à la base de données et le fichier SQL avec l'option -prepareonly. La commande suivante valide les instructions SQL du fichier s.sql avec la base de données SAMPLE.
    db2cli execsql –prepareonly –dsn sample –inputsql a.sql

    Lorsque vous indiquez l'option -prepareonly, la commande db2cli prépare les instructions SQL sans les exécuter.

  3. Si nécessaire, corrigez les erreurs générées et réexécutez la commande.
  4. Modifiez les mots clés pureQuery pour prendre en charge la capture des instructions SQL.

    L'optimisation client pureQuery capture les instructions SQL dans un fichier pureQueryXML lorsque vous exécutez la commande db2cli avec le fichier SQL. Pour capturer les instructions SQL, définissez les mots clés pureQuery Runtime suivants dans le fichier db2cli.ini :

    captureMode=ON
    pureQueryXml=Sample1Cptr.pdqxml

    Si vous utilisez un fichier db2dsdriver.cfg, définissez les mots clés sous forme d'attributs pour l'entrée de base de données :

    <database name="sample", host="serv1.mynet.com", port="50001">
    		<parameter name="captureMode" value="ON"/>
    		<parameter name="pureQueryXml" value="Sample1Cptr.pdqxml"/>
    	</database>
  5. Exécutez la commande db2cli pour capturer des instructions SQL.
    Exécutez la commande et indiquez la connexion à la base de données et le fichier SQL. La commande suivante exécute des instructions SQL du fichier s.sql dans la base de données SAMPLE. Les instructions sont capturées dans le fichier Sample1Cptr.pdqxml de pureQueryXML.
    db2cli execsql –dsn sample –inputsql a.sql

    Vous pouvez également utiliser l'option -prepareonly pour capturer les instructions SQL.

  6. Rétablissez les valeurs d'origine des mots clés pureQuery.

Que faire ensuite

Exécutez les utilitaires Java Configure et StaticBinder de pureQuery pour permettre aux applications CLI activées avec l'optimisation client pureQuery d'exécuter les instructions SQL en mode statique.


Commentaires