Opzione di configurazione del server transform noise words Server

QUESTO ARGOMENTO SI APPLICA A:sìSQL Server (a partire dalla versione 2008)noDatabase SQL di AzurenoAzure SQL Data Warehouse noParallel Data Warehouse THIS TOPIC APPLIES TO:yesSQL Server (starting with 2008)noAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Usare l'opzione di configurazione del server transform noise words per evitare la visualizzazione di un messaggio di errore se, a causa di parole non significative, un'operazione booleana su una query full-text restituisce zero righe. Questa opzione è utile per le query full-text in cui viene utilizzato il predicato CONTAINS e con operazioni booleane o operazioni NEAR che includono parole non significative. I valori possibili sono illustrati nella tabella seguente.

Valore Descrizione
0 Le parole non significative non vengono trasformate. Quando una query full-text contiene parole non significative, la query restituisce zero righe e in SQL ServerSQL Server viene generato un avviso. Questo è il comportamento predefinito.

Nota: l'avviso generato è un avviso di run-time. Pertanto, se la clausola full-text nella query non viene eseguita, l'avviso non viene generato. Per una query locale, viene generato un solo avviso, anche se sono presenti più clausole di query full-text. Per una query remota, il server collegato potrebbe non inoltrare l'errore ed è pertanto possibile che l'avviso non venga generato.
1 Le parole non significative vengono trasformate. Tali parole vengono ignorate e viene valutato e il resto della query.

Se vengono specificate parole non significative in un termine di prossimità, queste vengono rimosse da SQL ServerSQL Server. La parola non significativa is viene ad esempio rimossa da CONTAINS(<column_name>, 'NEAR (hello,is,goodbye)'), trasformando la query di ricerca in CONTAINS(<column_name>, 'NEAR(hello,goodbye)'). Si noti che la query CONTAINS(<column_name>, 'NEAR(hello,is)') verrebbe trasformata semplicemente in CONTAINS(<column_name>, hello) in quanto vi è un solo termine di ricerca valido.

Effetti dell'impostazione transform noise words

Questa sezione illustra il comportamento delle query che contengono una parola non significativa, "the", quando vengono usate le impostazioni alternative di transform noise words. Si presuppone che le stringhe di query full-text di esempio vengano eseguite su una riga di tabella che contiene i dati seguenti: [1, "The black cat"].

Nota

In tutti gli scenari di questo tipo può venire generato un avviso di parola non significativa.

  • Con transform noise words impostato su 0:

    Stringa query Risultato
    "cat" AND "the" Nessun risultato (il comportamento è lo stesso per "the" AND "cat").
    "cat" NEAR "the" Nessun risultato (il comportamento è lo stesso per "the" NEAR "cat").
    "the" AND NOT "black" Nessun risultato
    "black" AND NOT "the" Nessun risultato
  • Con transform noise words impostato su 1:

    Stringa query Risultato
    "cat" AND "the" Riscontro per la riga con ID 1
    "cat" NEAR "the" Riscontro per la riga con ID 1
    "the" AND NOT "black" Nessun risultato
    "black" AND NOT "the" Riscontro per la riga con ID 1

Esempio

L'esempio seguente imposta transform noise words su 1.

sp_configure 'show advanced options', 1;  
RECONFIGURE;  
GO  
sp_configure 'transform noise words', 1;  
RECONFIGURE;  
GO  

Vedere anche

Opzioni di configurazione del server (SQL Server)
CONTAINS (Transact-SQL)