La vista Análisis de pureQuery le permite ver todas las sentencias Java™ de una aplicación pureQuery que dependen de los valores de columna devueltos por una consulta de SQL.
Acerca de esta tarea
Esta información puede serle útil si quiere cambiar un campo en la aplicación Java y necesita saber las sentencias que se verán afectadas por el cambio.
Otra situación en la que el análisis puede ser útil es cuando se propone cambiar el nombre de una columna de una base de datos. Puede utilizar el resultado del análisis para estimar los cambios que hay que realizar en la aplicación y para encontrar todas las sentencias SQL que quedarían invalidas por el cambio.
También puede utilizar este análisis si la aplicación consulta columnas privadas de las bases de datos y quiere asegurarse de que los valores devueltos para estas columnas no aparecerán en los informes generados por la aplicación.
Para encontrar estas sentencias Java, pureQuery analiza el código fuente sin ejecutarlo.
Las sentencias SELECT que devuelven los valores de las columnas pueden incluir cláusulas JOIN y WITH.
Procedimiento
Para ver todas las sentencias de una aplicación
pureQuery que dependen de los valores devueltos por una consulta SQL:
- Indique a pureQuery en qué valores de columnas hay que analizar la dependencia del código.
- Si utiliza métodos anotados:
- Para analizar el valor de una sola columna de un conjunto de resultados devuelto por una sentencia SELECT,
pulse el botón derecho del ratón sobre el nombre o el alias de la columna en la sentencia SELECT en la declaración del método.
Luego, seleccione Desarrollo de acceso a datos > Análisis de código
fuente > Analizar dependencia de valores de
columna.
En el ejemplo siguiente, se analizará el valor de la
columna
CATLOG.
// Seleccionar todos los catálogos
@Select(sql="select NAME, CATLOG from \"CATALOG\"")
Iterator<Catalog> getCatalogs();
- Para analizar los valores de todas las columnas de un conjunto de resultados devuelto por una sentencia SELECT (excepto las
columnas que se definen con expresiones), pulse el botón derecho del ratón en cualquier lugar de la sentencia SELECT en la
declaración del método, excepto en un nombre de columna. Luego, seleccione Desarrollo de acceso a datos >
Análisis de código fuente > Analizar dependencia de
valores de columna.
En el ejemplo siguiente se coloca el cursor en la palabra SELECT.
// Seleccionar todos los catálogos
@Select(sql="select NAME, CATLOG from \"CATALOG\"")
Iterator<Catalog> getCatalogs();
- Otra forma de analizar los valores de todas las columnas de un conjunto de resultados devuelto por una sentencia SELECT es pulsar
con el botón derecho del ratón sobre una llamada al método anotado que se declara con la sentencia SELECT. Luego, seleccione Desarrollo de acceso a datos >
Análisis de código fuente > Analizar dependencia de
valores de columna.
En el ejemplo siguiente se coloca el cursor en el método
getCatalogs().
Iterator<Catalog> getCatalogs = data.getCatalogs();
- La declaración para el método getCatalogs() podría parecerse a las declaraciones de los dos ejemplos anteriores.
- Si utiliza métodos incorporados:
- Para analizar el valor de una sola columna de un conjunto de resultados devuelto por una sentencia SELECT,
pulse el botón derecho del ratón sobre el nombre o el alias de la columna en la sentencia SELECT en una llamada de método. Luego, seleccione Desarrollo de acceso a datos >
Análisis de código fuente > Analizar dependencia de
valores de columna.
En el ejemplo siguiente, se analizará el valor de la columna
NAME.
Iterator<Catalog> getCatalogs = db.queryIterator ("select NAME as CATALOG_NAME, CATLOG from \"CATALOG\"", Catalog.class);
- Otra manera de analizar el valor de una sola columna de un conjunto de resultados devuelto por una sentencia
SELECT, es pulsar con el botón derecho del ratón sobre el nombre o el alias de la columna en una sentencia SELECT que se utilice
para inicializar una variable. Luego, seleccione Desarrollo de acceso a datos >
Análisis de código fuente > Analizar dependencia de
valores de columna.
En el ejemplo siguiente, se analizará el valor de la columna
NAME.
@Sql String sqlStmt = "select NAME, CATLOG from \"CATALOG\"";
Iterator<Catalog> getCatalogs = db.queryIterator ("select NAME as CATALOG_NAME, CATLOG from \"CATALOG\"", Catalog.class);
- Para analizar los valores de todas las columnas de un conjunto de resultados devuelto por una sentencia SELECT (excepto las
columnas que se definen con expresiones), pulse el botón derecho del ratón en cualquier lugar de la sentencia SELECT en un
método de llamada, excepto en un nombre de columna. Luego, seleccione Desarrollo de acceso a datos >
Análisis de código fuente > Analizar dependencia de
valores de columna.
En el ejemplo siguiente se coloca el cursor en la palabra SELECT.
Iterator<Catalog> getCatalogs = db.queryIterator ("select NAME, CATLOG from \"CATALOG\"", Catalog.class);
- Otra manera de analizar los valores de todas las columnas de un conjunto de resultados devuelto por una sentencia SELECT es
pulsar con el botón derecho del ratón en cualquier punto de la sentencia SELECT que se utiliza para inicializar una variable,
excepto en un nombre de columna. Luego, seleccione Desarrollo de acceso a datos >
Análisis de código fuente > Analizar dependencia de
valores de columna.
En el ejemplo siguiente se coloca el cursor en la palabra SELECT.
@Sql String sqlStmt = "select NAME, CATLOG from \"CATALOG\"";
Iterator<Catalog> getCatalogs = db.queryIterator (sqlStmt, Catalog.class);
- Examine la vista pureQuery Analysis para ver las sentencias Java
que utilizan los valores analizados. Esta vista organiza las entradas con la jerarquía siguiente:
- Proyecto Java
- Paquete Java
- El archivo Java que contiene la sentencia desde la que inició el análisis del código
fuente
- La sentencia desde la que se ha iniciado el análisis del código fuente
- Las sentencias Java que dependen de los valores seleccionados
Qué hacer a continuación
Si alguna de las columnas contiene tipos de datos marcados como
privados en un modelo de dominio, aparecerán en la vista con este indicador
Para obtener
información sobre cómo marcar los tipos de datos como privados, consulte
Adición de
información de privacidad de datos a tipos de datos de dominio.
Pulse el botón derecho del ratón sobre una línea de
código y seleccione Mostrar en origen para abrir el archivo fuente en el editor
Java.
La línea se resalta en el editor.
Detenga los análisis que tardan demasiado pulsando en
.
Filtre los resultados
pulsando la flecha abajo en la parte superior de la vista y pulsando
para abrir la ventana Filtro.
Borre los resultados pulsando en
.