Share via


Opzione di configurazione del server transform noise words Server

Usare l'opzione di configurazione del transform noise words server per eliminare un messaggio di errore se parole non significative, ovvero parole non significative, causano un'operazione booleana in una query full-text per restituire 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 Server viene generato un avviso. Questo è il comportamento predefinito.

Si noti che l'avviso è un avviso di runtime. 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 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

In questa sezione viene illustrato il comportamento di query che contengono una parola non significativa, "the", quando vengono utilizzate 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 di 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 di 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

Nell'esempio seguente il valore di transform noise words viene impostato 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)