SQL

Descripción

Establece o devuelve la serie de SQL asociada a la consulta.

Si asigna un valor a esta propiedad, el objeto QueryDef utiliza la serie en lugar de los términos que ha agregado utilizando otros métodos del objeto QueryDef.

Si obtiene el valor de esta propiedad, el objeto QueryDef devuelve la serie de SQL que se va a ejecutar cuando se ejecute la consulta. Si ha asignado antes una serie de SQL a esta propiedad, se devuelve dicha serie; de lo contrario, este método genera una serie de SQL a partir de los términos que se han añadido al objeto QueryDef hasta el momento.

Nota: Cuando se utilizan sentencias SQL en las consultas de ClearQuest, éstas deben incluir los nombres de columna de las bases de datos y no los nombres de los campos. Los nombres de columna de las bases de datos y los nombres de campo puede que no se correspondan si el nombre de campo:
  • Contiene palabras reservadas por SQL.
  • Se renombra después de aplicar una revisión de esquema a como mínimo una base de datos de usuario.

Sintaxis

VBScript

querydef.SQL 
querydef.SQL string_of_SQL_statements 

Perl

$querydef->GetSQL();
$querydef->SetSQL(string_of_SQL_statements); 
Identificador
Descripción
querydef
Un objeto QueryDef.
string_of_SQL_statements
Un valor String que contiene las sentencias SQL individuales.
Valor de retorno
Para Get, devuelve un valor String que contiene el SQL que se va a ejecutar al ejecutar la consulta.

Para Set, no existe valor de retorno. Devuelve una excepción si el usuario no tiene privilegio de escritor de SQL.

Ejemplos

VBScript

set session = GetSession

set workspace = session.GetWorkSpace

'Obtener el QueryDef proporcionando un nombre de consulta
set querydef = workspace.GetQueryDef "Public Queries\Defects"

'Provide a string of SQL statements to set SQL
querydef.SQL "select distinct T1.dbid,T1.id,T1.headline from Defect 
T1,statedef T2 where T1.state = T2.id and (T1.dbid <> 0 and (T2.name = 
'Submitted'))" 

Perl

$workspace = $session->GetWorkSpace();

$querydef = $workspace->GetQueryDef(queryName);

$querydef->SetSQL("select distinct T1.dbid,T1.id,T1.headline from Defect 
T1,statedef T2 where T1.state = T2.id and (T1.dbid <> 0 and (T2.name = 
'Submitted'))"); 

Comentarios