Utilice el entorno de trabajo para extraer sentencias SQL del
código Java™, crear un archivo pureQueryXML
a partir de las sentencias SQL y enlazar las sentencias SQL a la base de datos.
En las lecciones anteriores de la guía de aprendizaje, ha creado un archivo pureQueryXML mediante
la ejecución de la aplicación y la captura de sentencias SQL. Otra manera de crear
un archivo pureQueryXML que contenga las sentencias SQL de la aplicación es
extraer el SQL del código fuente de la aplicación. Se extraen las sentencias SQL
que el entorno de trabajo lista en la vista Resumen de SQL.
Para crear un archivo pureQueryXML a partir de sentencias SQL exportadas del código
fuente Java:
- Extraiga el SQL de la aplicación.
- En la vista Resumen de SQL, abra la ventana Proyectos de Java pulsando
en el separador Java, en la parte inferior de la vista.
- En la ventana Proyectos Java, pulse con el botón derecho del ratón en el archivo de
código fuente Java y
pulse Exportar SQL a archivo.
- Guarde el archivo que contiene las sentencias SQL extraídas
como dataAccessFolder\MySample.sql.
El entorno de trabajo crea el archivo dataAccessFolder\MySample.sql.
Nota: Después de crear el archivo, puede abrir el archivo SQL en el editor de SQL,
añadir información de atributos del cursor y crear el archivo pureQueryXML desde
el editor de SQL.
- Cree un archivo pureQueryXML desde el archivo SQL.
- Si es necesario, renueve el contenido de la carpeta dataAccessFolder en la ventana Explorador de paquetes para visualizar el archivo MySample.sql.
- En el Explorador de paquetes, pulse con el botón derecho del ratón en el archivo SQL y pulse .
- En Generar pureQueryXML a partir de sentencias SQL,
especifique la ubicación del archivo pureQueryXML de salida y pulse Siguiente.
- En el campo Proyecto Java, seleccione el proyecto.
- En el campo Nombre de archivo pureQueryXML, especifique el
nombre MySample.pdqxml.
- Revise las actualizaciones que se proponen para el Archivo Default.genProps.
El entorno de trabajo actualiza el archivo
Default.genProps con información
similar al texto siguiente, que especifica una opción
-rootPkgName con el
valor
myPkg para el archivo pureQueryXML.
C:\DS-tutorial\pq-tutorial\dataAccessFolder\MySample.pdqxml = -rootPkgName myPkg
- Pulse Finalizar.
El entorno de trabajo crea el archivo pureQueryXML dataAccessFolder\MySample.pdqxml.
- Visualice el archivo pureQueryXML.
En la vista Explorador de paquetes, efectúe una doble pulsación en el archivo dataAccessFolder\MySample.pdqxml.
El archivo se
abre en el editor de pureQueryXML. El nombre del conjunto
de sentencias es myPkg.
- Cierre el archivo pureQueryXML.
- Enlace las sentencias SQL del archivo pureQueryXML.
- Pulse con el botón derecho del ratón el archivo capture.pdqxml y pulse .
- En el cuadro de diálogo Seleccionar conexión, seleccione la
base de datos SAMPLE y pulse Finalizar.
El entorno de trabajo ejecuta el programa de utilidad
StaticBinder y envía
la salida desde ese programa de utilidad en la vista Consola:
================================================================================
El programa de utilidad StaticBinder está iniciando la operación de enlace para el archivo pureQueryXml
'C:\test\DS-tutorial\pq-tutorial\dataAccessFolder\MySample.pdqxml'.
Iniciando el proceso de opciones:
-url "jdbc:db2://localhost:50000/SAMPLE:retrieveMessagesFromServerOnGetMessage=true;"
-username "*****" -password "*****"
-pureQueryXml "C:\test\DS-tutorial\pq-tutorial\dataAccessFolder\MySample.pdqxml"
El programa de utilidad StaticBinder ha enlazado correctamente el paquete 'myPkgA1' para el nivel de aislamiento 'UR'.
El programa de utilidad StaticBinder ha enlazado correctamente el paquete 'myPkgA2' para el nivel de aislamiento 'CS'.
El programa de utilidad StaticBinder ha enlazado correctamente el paquete 'myPkgA3' para el nivel de aislamiento 'RS'.
El programa de utilidad StaticBinder ha enlazado correctamente el paquete 'myPkgA4' para el nivel de aislamiento 'RR'.
La operación de enlace se ha efectuado correctamente para
'C:\test\DS-tutorial\pq-tutorial\dataAccessFolder\MySample.pdqxml'.
================================================================================
Resultados de la actividad del programa de utilidad StaticBinder:
Número de elementos para los que la operación de enlace ha sido SATISFACTORIA: 1
El enlace para el archivo XML MySample.pdqxml que hace uso de la conexión SAMPLE en el proyecto pq-tutorial
se ha realizado satisfactoriamente.
- Actualice el código fuente para que ejecute una nueva sentencia SQL y ejecute
la aplicación.
- En el Explorador de paquetes, abra la aplicación MySample.java.
- Establezca el parámetro de la aplicación para que ejecute una nueva
sentencia SQL.
Cambie el valor de la variable i a 2 en
el código siguiente:
if ( args.length == 0) {
// valor para la sentencia SQL predeterminada que se va a ejecutar
i = 2 ;
- Guarde el archivo.
- Ejecute la aplicación.
Pulse con el botón derecho del ratón en el archivo MySample.java y
pulse
pureQuery
Runtime devuelve un error que indica que no se puede encontrar la sentencia SQL en el
archivo pureQueryXML.
En el archivo de propiedades de pureQuery Runtime src/pdq.properties, el valor de la propiedad pureQueryXML es dataAccessFolder/capture.pdqxml. El
archivo pureQueryXML no contiene la sentencia SQL emitida por la aplicación.
- Cambie la información del archivo pdq.properties para establecer
el archivo MySample.pdqxml como archivo pureQueryXML.
- Efectúe una doble pulsación en el archivo scr\pdq.properties.
El archivo se abre en el editor de
propiedades de PDQ.
- Establezca el archivo MySample.pdqxml como el archivo de pureQueryXML cambiando el valor de la propiedad pureQueryXML a dataAccessFolder/MySample.pdqxml.
pdq.captureMode=OFF
pdq.capturedOnly=TRUE
pdq.executionMode=STATIC
pdq.pureQueryXml=dataAccessFolder/MySample.pdqxml
- Guarde el archivo.
- Ejecute la aplicación.
Pulse con el botón derecho del ratón en el archivo MySample.java y
pulse
La aplicación se ejecuta. La salida
aparece en la ventana
Consola. La salida es
similar al ejemplo siguiente:
=======
IBM InfoSphere Optim pureQuery Runtime 3.1.0.0 build 3.10.115
=======
case 2
case 2 - large projects: 11
Finished case 2
Con la asignación correcta en
el archivo pureQueryXML MySample.java entre la sentencia
SQL y el paquete de la base de datos SAMPLE, pureQuery
Runtime puede ejecutar estáticamente la sentencia.