Konfigurieren und Verwalten von Wörtertrennungen und Wortstammerkennungen für die Suche
Wörtertrennung und Wortstammerkennung führen eine linguistische Analyse aller volltextindizierten Daten aus. Zur linguistischen Analyse gehört das Auffinden von Wortgrenzen (Trennfugen) und das Konjugieren von Verben (Wortstammerkennung). Wörtertrennungen und Wortstammerkennungen sind sprachspezifisch, und die Regeln für die linguistische Analyse unterscheiden sich für verschiedene Sprachen. Für eine bestimmte Sprache identifiziert eine Wörtertrennung einzelne Wörter, indem die Wortgrenzen basierend auf den lexikalischen Regeln der Sprache ermittelt werden. Jedes Wort (auch bezeichnet als Token) wird zur Größenreduzierung in einer komprimierten Darstellung in den Volltextindex eingefügt. Die Wortstammerkennung generiert Flexionsformen eines bestimmten Worts basierend auf den jeweiligen Regeln der Sprache. (Zum Beispiel sind "rennend", "lief" und "gelaufen" verschiedene Formen des Worts "laufen".)
Wenn Sie sprachspezifische Wörtertrennungen verwenden, können Sie für die jeweilige Sprache genauere Ergebnisbegriffe erzielen. Wenn es eine Wörtertrennung für eine Sprachfamilie gibt, jedoch nicht für die jeweilige Untersprache, wird die Hauptsprache verwendet. Beispielsweise wird Text in kanadischem Französisch mit der Wörtertrennung für Französisch behandelt. Ist für eine Sprache keine Wörtertrennung verfügbar, wird die neutrale Wörtertrennung verwendet. Mit der neutralen Wörtertrennung werden neutrale Zeichen, wie Leerzeichen und Satzzeichen, als Wortgrenzen betrachtet.
In diesem Thema
Registrieren der Wörtertrennungen
Festlegen der Option für die Volltext-Standardsprache
Auswählen der Sprache für eine indizierte Spalte
Abrufen von Informationen zu Wörtertrennungen
Behebung von Timeoutfehlern bei der Wörtertrennung
Auswirkungen der neuen Wörtertrennungen
Registrieren der Wörtertrennungen
Die Wörtertrennung muss für eine zu verwendende Sprache jeweils registriert sein. Bei registrierten Wörtertrennungen sind die zugeordneten sprachlichen Ressourcen – Wortstammerkennung, Füllwörter (Stoppwörter) und Thesaurusdateien – für Volltextindizierungs- und Volltextabfragevorgänge verfügbar. Wenn Sie eine Liste der Sprachen anzeigen möchten, deren Wörtertrennungen derzeit in SQL Server registriert sind, verwenden Sie die folgende Transact-SQL-Anweisung:
SELECT * FROM sys.fulltext_languages
Wenn Sie eine Wörtertrennung hinzufügen, entfernen oder ändern, müssen Sie die Liste der Microsoft Windows-Gebietsschemabezeichner (LCID) aktualisieren, die bei Volltextindizierung und -abfrage unterstützt werden. Weitere Informationen finden Sie unter Anzeigen oder Ändern von registrierten Filtern und Wörtertrennungen.
Festlegen der Option für die Volltext-Standardsprache
Bei einer lokalisierten Version von SQL Server wird die Option default full-text language vom SQL Server-Setup auf die Sprache des Servers festgelegt, falls eine geeignete Übereinstimmung vorhanden ist. Bei einer nicht lokalisierten Version SQL Server wird Englisch für die Option default full-text language verwendet.
Beim Erstellen oder Ändern eines Volltextindex können Sie für jede volltextindizierte Spalte eine andere Sprache angeben. Ist für eine Spalte keine Sprache angegeben, wird standardmäßig der Wert der Konfigurationsoption default full-text language verwendet.
Hinweis |
---|
Alle Spalten, die in einer einzelnen Klausel für eine Volltextabfragefunktion aufgelistet sind, müssen dieselbe Sprache verwenden, sofern nicht die LANGUAGE-Option in der Abfrage angegeben ist. Die Sprache der volltextindizierten Spalte, auf die sich die Abfrage bezieht, bestimmt die linguistische Analyse, die mit Argumenten der Volltextabfrageprädikate (CONTAINS und FREETEXT) und -funktionen (CONTAINSTABLE und FREETEXTTABLE) ausgeführt wird. |
Auswählen der Sprache für eine indizierte Spalte
Beim Erstellen eines Volltextindex wird empfohlen, die Sprache für jede indizierte Spalte anzugeben. Wenn für eine Spalte keine Sprache angegeben ist, wird die Standardsprache des Systems verwendet. Die Sprache einer Spalte bestimmt, welche Wörtertrennung und Wortstammerkennung zum Indizieren dieser Spalte verwendet wird. Außerdem wird die Thesaurusdatei dieser Sprache bei Volltextabfragen der Spalte verwendet.
Bei der Wahl der Spaltensprache für die Erstellung eines Volltextindex sind mehrere Dinge zu bedenken. Diese beziehen sich darauf, wie der Text vom Volltextmodul in Token zerlegt und anschließend indiziert wird. Weitere Informationen finden Sie unter Auswählen einer Sprache beim Erstellen eines Volltextindex.
So zeigen Sie die Wörtertrennungssprache einer Spalte an
sys.fulltext_index_columns (Transact-SQL)
SELECT 'language_id' AS "LCID" FROM sys.fulltext_index_columns;
Abrufen von Informationen zu Wörtertrennungen
Anzeigen des Tokenisierungsergebnis einer Kombination aus Wörtertrennung, Thesaurus und Stopliste
So geben Sie Informationen über die registrierten Wörtertrennungen zurück
Behebung von Timeoutfehlern bei der Wörtertrennung
Timeoutfehler können bei der Wörtertrennung in verschiedenen Situationen auftreten. Weitere Informationen zu diesen Situationen sowie zur Behandlung dieser Fehler finden Sie unter MSSQLSERVER_30053.
Auswirkungen der neuen Wörtertrennungen
Jede Version von SQL Server enthält in der Regel neue Wörtertrennungen, die über bessere linguistische Regeln als frühere Wörtertrennungen verfügen und außerdem genauer sind. Gegebenenfalls verhalten sich die neuen Wörtertrennungen im Vergleich zu den Wörtertrennungen in importierten SQL Server-Volltextindizes etwas anders. Dies ist wichtig, wenn ein Volltextkatalog importiert wurde, während eine Datenbank auf die neue Version von SQL Server aktualisiert wurde. Eine oder mehrere Sprachen, die von den Volltextindizes im Volltextkatalog verwendet werden, sind jetzt ggf. neuen Wörtertrennungen zugeordnet. Weitere Informationen finden Sie unter Aktualisieren der Volltextsuche von SQL Server 2005.
Eine vollständige Liste aller Wörtertrennungen finden Sie unter sys.fulltext_languages (Transact-SQL).
Siehe auch
Verweis
ALTER FULLTEXT INDEX (Transact-SQL)
CREATE FULLTEXT INDEX (Transact-SQL)
sp_fulltext_service (Transact-SQL)
sys.fulltext_languages (Transact-SQL)
Konzepte
Konfigurieren und Verwalten von Stoppwörtern und Stopplisten für Volltextsuche