Freigeben über


transform noise words (Option)

Verwenden Sie die Serverkonfigurationsoption transform noise words, um eine Fehlermeldung zu unterdrücken, wenn Füllwörter bzw. Stoppwörter bewirken, dass eine boolesche Operation für eine Volltextabfrage keine Zeilen zurückgibt. Diese Option ist für Volltextabfragen nützlich, bei denen das CONTAINS-Prädikat verwendet wird, in dem boolesche oder NEAR-Operationen häufige Wörter enthalten. Eine Beschreibung der möglichen Werte finden Sie in der folgenden Tabelle.

Wert

Beschreibung

0

Füllwörter (bzw. Stoppwörter) werden nicht transformiert. Wenn eine Volltextabfrage Füllwörter enthält, werden von der Abfrage keine Zeilen zurückgegeben, und SQL Server gibt eine Warnung aus. Dies ist das Standardverhalten.

HinweisHinweis
Bei der Warnung handelt es sich um eine Laufzeitwarnung. Die Warnung wird daher nicht ausgegeben, wenn die Volltextklausel in der Abfrage nicht ausgeführt wird. 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 (bzw. Stoppwörter) werden transformiert. Sie werden ignoriert, und die restliche Abfrage wird ausgewertet.

SQL Server entfernt Füllwörter, die in einem NEAR-Begriff angegeben werden. Beispielsweise wird das Füllwort is aus CONTAINS(<column_name>, 'NEAR (hello,is,goodbye)') entfernt, und die Suchabfrage wird zu CONTAINS(<column_name>, 'NEAR(hello,goodbye)') transformiert. Beachten Sie, dass CONTAINS(<column_name>, 'NEAR(hello,is)') lediglich zu CONTAINS(<column_name>, hello) transformiert wird, da nur ein gültiger Suchbegriff enthalten ist.

Auswirkungen der Einstellung transform noise words

In diesem Abschnitt wird das Verhalten von Abfragen dargestellt, die in den geänderten Einstellungen von transform noise words das Füllwort "the" enthalten. Die Beispielzeichenfolgen für die Volltextabfrage beziehen sich auf die Ausführung für eine Tabellenzeile, die die folgenden Daten enthält: [1, "The black cat"].

HinweisHinweis

Sämtliche dieser Szenarien können eine Füllwortwarnung zur Folge haben.

  • Wenn transform noise words auf 0 (NULL) festgelegt ist:

    Abfragezeichenfolge

    Ergebnis

    "cat" AND "the"

    Keine Ergebnisse (Das Verhalten entspricht "the" AND "cat".)

    "cat" NEAR "the"

    Keine Ergebnisse (Das Verhalten entspricht "the" AND "cat".)

    "the" AND NOT "black"

    Keine Ergebnisse

    "black" AND NOT "the"

    Keine Ergebnisse

  • Wenn transform noise words auf 1 festgelegt ist:

    Abfragezeichenfolge

    Ergebnis

    "cat" AND "the"

    Treffer für die Zeile mit der ID 1

    "cat" NEAR "the"

    Treffer für die Zeile mit der ID 1

    "the" AND NOT "black"

    Keine Ergebnisse

    "black" AND NOT "the"

    Treffer für die Zeile mit der ID 1

Beispiel

Im folgenden Beispiel wird transform noise words auf 1 festgelegt.

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