transform noise words (Serverkonfigurationsoption)

Gilt für: SQL Server

Verwenden Sie Serverkonfigurationsoption Füllwörtertransformation (Transform Noise Words), um eine Fehlermeldung zu unterdrücken, wenn durch Füllwörter, bei denen es sich um Stoppwörterhandelt, verursacht wird, dass ein boolescher Vorgang für eine Volltextabfrage 0 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 Füllwörter enthalten. Eine Beschreibung der möglichen Werte finden Sie in der folgenden Tabelle:

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

Hinweis: 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 (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. Beachten Sie, dass CONTAINS(<column_name>, 'NEAR(hello,is)') einfach in CONTAINS(<column_name>, hello) umgewandelt werden würde, da es nur einen gültigen Suchbegriff gibt.

Auswirkungen der Einstellung von „Füllwörtertransformation“

In diesem Abschnitt wird das Verhalten von Abfragen, die das Füllwort „the“ enthalten, unter den alternativen Einstellungen von Füllwörtertransformationdargestellt. Für die Beispielzeichenfolgen für Volltextabfragen wird angenommen, dass sie in einer Tabellenzeile mit den folgenden Daten ausgeführt werden: [1, "The black cat"].

Hinweis

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

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

    Abfragezeichenfolge Ergebnis
    "cat" AND "the" Keine Ergebnisse (das Verhalten ist für "the" AND "cat" genau gleich.)
    "cat" NEAR "the" Keine Ergebnisse (das Verhalten ist für "the" NEAR "cat" genau gleich.)
    "the" AND NOT "black" Keine Ergebnisse
    "black" AND NOT "the" Keine Ergebnisse
  • Mit „Füllwörtertransformation“ auf „1“ festgelegt:

    Abfragezeichenfolge Ergebnis
    "cat" AND "the" Treffer für Zeile mit ID 1
    "cat" NEAR "the" Treffer für Zeile mit ID 1
    "the" AND NOT "black" Keine Ergebnisse
    "black" AND NOT "the" Treffer für Zeile mit ID 1

Beispiel

Im folgenden Beispiel wird Füllwörtertransformation auf 1festgelegt.

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

Weitere Informationen

Serverkonfigurationsoptionen (SQL Server)
CONTAINS (Transact-SQL)