Método ISearchQueryHelper::GenerateSQLFromUserQuery (searchapi.h)
Genera una consulta de Lenguaje de consulta estructurado (SQL) basada en una cadena de consulta proporcionada por el cliente expresada en la sintaxis de consulta avanzada (AQS) o en la sintaxis de consulta natural (NQS).
Sintaxis
HRESULT GenerateSQLFromUserQuery(
[in] LPCWSTR pszQuery,
[out, retval] LPWSTR *ppszSQL
);
Parámetros
[in] pszQuery
Tipo: LPCWSTR
Puntero a una cadena Unicode terminada en null que contiene una consulta en AQS o NQS.
[out, retval] ppszSQL
Tipo: LPWSTR*
Recibe la dirección de un puntero a una cadena de consulta SQL basada en la consulta en el parámetro pszQuery .
Valor devuelto
Tipo: HRESULT
Si este método se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.
Comentarios
Este método genera SQL con el formato siguiente:
SELECT <QuerySelectColumns> FROM <CatalogName that created query helper>
WHERE <Result of interpreting the User query passed into this function according to QuerySyntax>
[ AND|OR <QueryWhereRestrictions>]
La generación de SQL usa la configuración especificada en ISearchQueryHelper::p ut_QueryTermExpansion, ISearchQueryHelper::p ut_QueryContentProperties y ISearchQueryHelper::p ut_QueryContentLocale.
ISearchQueryHelper::GenerateSQLFromUserQuery usa la configuración regional. Sin embargo, ISearchQueryHelper no usa la configuración regional. Como resultado, hay incoherencias en el código SQL devuelto por ISearchQueryHelper::GenerateSQLFromUserQuery e ISearchQueryHelper para la configuración específica de la región, como formatos de fecha. Por ejemplo, si establece la configuración regional para la fecha y hora en algo distinto de la configuración regional del sistema, como en-CA si la configuración regional del sistema es en-US y escribe Toybox -m -i "date:3/7/2008" -Y -s
, el CÓDIGO SQL devuelto será diferente. El SQL de ISearchQueryHelper::GenerateSQLFromUserQuery habrá analizado el 3/7/2008 según en-CA (buscando elementos con fecha del 3 de julio de 2008), mientras que el SQL de ISearchQueryHelper habrá analizado el 3/7/2008 según en-US (buscando elementos con fecha 7 de marzo de 2008).
Consulte el ejemplo de código DSearch para ver cómo crear una clase para una aplicación de consola estática para consultar Windows Search mediante el ensamblado Microsoft.Search.Interop para ISearchQueryHelper.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows XP con SP2, Windows Vista [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003 con SP1 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | searchapi.h |
Redistribuible | Windows Desktop Search (WDS) 3.0 |
Consulte también
ISearchQueryHelper::get_QuerySyntax