Freigeben über


Serverkonfiguration: Umwandlung von Rauschwörtern

Gilt für:SQL Server

Verwenden Sie die transform noise words Serverkonfigurationsoption, um eine Fehlermeldung zu unterdrücken, wenn Rauschwörter (auch als Stopwords bezeichnet) einen booleschen Vorgang für eine Volltextabfrage auslösen, um null Zeilen zurückzugeben. Diese Option ist für Volltextabfragen nützlich, bei denen das CONTAINS-Prädikat verwendet wird, in dem boolesche oder NEAR-Operationen Füllwörter enthalten. Eine Beschreibung der möglichen Werte finden Sie in der folgenden Tabelle:

Wert Beschreibung
0 (Standard) Füllwörter (oder Stoppwörter) werden nicht verändert. Wenn eine Volltextabfrage Füllwörter enthält, gibt die Abfrage 0 Zeilen zurück und SQL Server löst eine Warnung aus.

Anmerkung: Die Warnung ist eine Laufzeitwarnung. Wenn die Volltextklausel in der Abfrage daher nicht ausgeführt wird, wird die Warnung nicht ausgelöst. Bei lokalen Abfragen wird auch bei mehreren Volltextabfrageklauseln immer nur eine einzige Warnung ausgegeben. Bei Remoteabfragen übermittelt der Verbindungsserver u. U. den Fehler nicht, und die Warnung wird daher möglicherweise nicht ausgegeben.
1 Füllwörter (oder Stoppwörter) werden umgewandelt. Sie werden ignoriert, und der Rest der Abfrage wird ausgewertet.

Wenn Füllwörter in einem NEAR-Begriff angegeben werden, werden sie von SQL Server entfernt. Das Füllwort is wird beispielsweise aus CONTAINS(<column_name>, 'NEAR (hello,is,goodbye)')entfernt, und die Suchabfrage wird in CONTAINS(<column_name>, 'NEAR(hello,goodbye)')umgewandelt. Anmerkung:CONTAINS(<column_name>, 'NEAR(hello,is)') würde einfach in CONTAINS(<column_name>, hello) umgewandelt, da es nur einen gültigen Suchbegriff gibt.

Auswirkungen der Einstellung für Transformationsgeräusche

In diesem Abschnitt wird das Verhalten von Abfragen veranschaulicht, die ein Störwort enthalten, the unter den alternativen Einstellungen von transform noise words. Es wird angenommen, dass die Volltextabfragezeichenfolgen in einer Tabellenzeile ausgeführt werden, die folgende Daten enthält: [1, "The black cat"].

Hinweis

Alle derartigen Szenarien können eine Füllwortwarnung generieren.

  • Mit „Füllwörtertransformation“ auf „0“ festgelegt:

    Abfragezeichenfolge Ergebnis
    cat UND the Keine Ergebnisse (Das Verhalten ist für the AND catidentisch.)
    cat NAHE the Keine Ergebnisse (Das Verhalten ist für the NEAR catidentisch.)
    the UND NICHT black Keine Ergebnisse
    black UND NICHT the Keine Ergebnisse
  • Mit „Füllwörtertransformation“ auf „1“ festgelegt:

    Abfragezeichenfolge Ergebnis
    cat UND the Treffer für Zeile mit ID 1
    cat IN DER NÄHE VON the Treffer für Zeile mit ID 1
    the UND NICHT black Keine Ergebnisse
    black UND NICHT the Treffer für Zeile mit ID 1

Beispiele

Im folgenden Beispiel wird transform noise words auf 1 gesetzt.

EXECUTE sp_configure 'show advanced options', 1;
RECONFIGURE;
GO

EXECUTE sp_configure 'transform noise words', 1;
RECONFIGURE;
GO