Metodo ISearchQueryHelper::GenerateSQLFromUserQuery (searchapi.h)
Genera una query Structured Query Language (SQL) basata su una stringa di query fornita dal client espressa nella sintassi di query avanzata (AQS) o nella sintassi della query naturale (NQS).
Sintassi
HRESULT GenerateSQLFromUserQuery(
[in] LPCWSTR pszQuery,
[out, retval] LPWSTR *ppszSQL
);
Parametri
[in] pszQuery
Tipo: LPCWSTR
Puntatore a una stringa Unicode con terminazione null contenente una query in AQS o NQS.
[out, retval] ppszSQL
Tipo: LPWSTR*
Riceve l'indirizzo di un puntatore a una stringa di query SQL in base alla query nel parametro pszQuery .
Valore restituito
Tipo: HRESULT
Se questo metodo ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .
Commenti
Questo metodo genera SQL nel formato seguente:
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 generazione SQL usa le impostazioni specificate in ISearchQueryHelper::p ut_QueryTermExpansion, ISearchQueryHelper::p ut_QueryContentProperties e ISearchQueryHelper::p ut_QueryContentLocale.
ISearchQueryHelper::GenerateSQLFromUserQuery usa le impostazioni locali a livello di area.
Tuttavia, ISearchQueryHelper non usa le impostazioni delle impostazioni locali a livello di area. Di conseguenza, sono presenti inconsistenze in SQL restituite da ISearchQueryHelper::GenerateSQLFromUserQuery e ISearchQueryHelper per le impostazioni specifiche dell'area, ad esempio i formati di data. Ad esempio, se si impostano le impostazioni locali per date/ora su un elemento diverso dalle impostazioni locali del sistema, ad esempio en-CA se le impostazioni locali di sistema sono en-US e immettere Toybox -m -i "date:3/7/2008" -Y -s
, il sql restituito sarà diverso. SQL da ISearchQueryHelper::GenerateSQLFromUserQuery avrà analizzato 3/7/2008 secondo en-CA (ricerca di elementi datati 3 luglio 2008) mentre SQL da ISearchQueryHelper avrà analizzato 3/7/2008 secondo en-US (ricerca di elementi datati 7 marzo 2008).
Esaminare l'esempio di codice DSearch per vedere come creare una classe per un'applicazione console statica per eseguire query su Windows Search usando l'assembly Microsoft.Search.Interop per ISearchQueryHelper.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows XP con SP2, Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2003 con SP1 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | searchapi.h |
Componente ridistribuibile | Windows Desktop Search (WDS) 3.0 |
Vedi anche
ISearchQueryHelper::get_QuerySyntax
Esecuzione di query sull'indice a livello di codice
Esecuzione di query sull'indice con sintassi SQL di Windows Search