< Anterior | Siguiente >

Compilación de una consulta

Una consulta se compila creando un objeto QueryDef y llamando al método BuildQuery del objeto Session.
Una consulta consiste en una lista de campos para un tipo de registro determinado para el que desea recuperar los valores. Los registros se devuelven en un objeto ResultSet. La consulta devuelve los campos solicitados para todos los registros de un tipo determinado. A continuación, puede iterar en todos los conjuntos de resultados y procesar los datos.

La creación de una consulta puede implicar la creación de, como mínimo, tres objetos separados: un objeto QueryDef, un objeto QueryFilterNode y un objeto ResultSet. Las consultas más complejas también pueden implicar la creación de objetos QueryFilterNode adicionales.

Para crear una consulta simple, siga los pasos que se indican a continuación:

  1. Compile una consulta por medio del objeto QueryDef para especificar los datos a recuperar. El objeto QueryDef contiene la definición de una consulta para una base de datos de Rational ClearQuest. Cuando se crea QueryDef, puede utilizarlo para obtener información de la base de datos. Para crear este objeto, utilice el método BuildQuery del objeto Session.
  2. Utilice los métodos de QueryDef para añadir criterios de búsqueda y especificar los campos de cada registro que desea que devuelva la consulta.
  3. Cree un objeto ResultSet para mantener los datos devueltos. Para crear este objeto, llame al método BuildResultSet del objeto Session. En el momento de la creación, el objeto ResultSet crea un conjunto de estructuras de datos internas mediante la información del objeto QueryDef como plantilla. Cuando se ejecuta la consulta, el objeto ResultSet rellena estas estructuras de datos con datos de la consulta.
  4. Ejecute la consulta llamando al método Execute o ExecuteAndCountRecords del objeto ResultSet. Llame a cualquiera de estos métodos para rellenar un conjunto de resultados con los datos que obtiene de la base de datos.
  5. Acceda a los datos iterando a través del objeto ResultSet y utilizando otros métodos del objeto ResultSet para obtener información acerca de los campos de un registro.
En lugar de devolver el registro completo, una consulta sólo devuelve los campos del registro que se han especificado llamando al método BuildField del objeto QueryDef. El método Execute no devuelve los resultados en ningún orden concreto. Por lo tanto, el objeto ResultSet utiliza un sistema basado en cursor para permitir que el código se mueva a través de los registros de uno en uno.
< Anterior | Siguiente >

Comentarios