Sep
13
2013

MS SQL Stoppwörter bearbeiten

Kategorie: Einstellungen
Support-Recherche: Volltextsuche, Volltext, MS SQL Server


Seitdem wir die Volltextsuche des MS SQL-Servers verwenden, finden wir einige Dokumente nicht mehr mit unseren Suchbegriffen. Woran liegt das und kennen Sie eine Abhilfe?

Volltextsuche in Office Manager-Archiven

Office Manager DMS verwendet grundsätzlich eine eigene Volltextsuche. Die Enterprise-Edition kann aber auch die Volltextkataloge des SQL-Servers mit erweiterten Recherche-Möglichkeiten nutzen. Siehe hierzu im White Paper.

Bei der Suche ignorierte Wörter

Wörter, die häufig vorkommenden und zugleich für die Suche uninteressant sind, werden ignoriert. Man spricht hier von „Stoppwörtern“.

Beide Methoden verwenden unterschiedliche Stoppwortlisten – daher das unterschiedliche Suchergebnis nach der Umstellung auf SQL-Volltextsuche.

MS SQL ignoriert sehr viele Wörter. Zum Beispiel hatten wir einmal eine Anfrage, warum der Vorname „Heidi“ nicht gefunden wird. Lösung: auch dieser ist als Stoppwort definiert.

Alle Wörter indexieren

Sie haben die Möglichkeit, alle Wörter in den Index aufzunehmen und somit für die Volltextsuche verfügbar zu halten. Bei großen Dokumentarchiven raten wir aber, nur die gewünschten Wörter aus der Liste zu entfernen.

Änderungen können mit dem Programm „MS SQL Management Studio“ durchgeführt werden. Wir beschreiben hier aber die entsprechenden SQL-Anweisungen:

  1. Öffnen Sie das Archiv, dessen Liste Sie überarbeiten möchten.
  2. Melden Sie sich im Office Manager bitte den als Administrator an (Menü Datei | Optionen | Administrator).
  3. Wählen Sie anschließend den Menübefehl Administrator | Skript | SQL-Abfrage | SQL-Editor.
  4. Geben Sie das gewünschte SQL-Skript (siehe im Folgenden) ein und klicken Sie auf Abfrage | Temporäre Ergebnismenge verwenden. Die Meldung „CommandText gibt keine Ergebnismenge zurück“ können Sie ignorieren.
Skript 1. Stoppwörter deaktivieren, alle Wörter suchen

ALTER FULLTEXT INDEX ON document
SET STOPLIST OFF

Und:

ALTER FULLTEXT INDEX ON docarch
SET STOPLIST OFF

Skript 2. Stoppwörter wieder aktivieren

ALTER FULLTEXT INDEX ON document
SET STOPLIST SYSTEM

Und:

ALTER FULLTEXT INDEX ON docarch
SET STOPLIST SYSTEM

Alternativ zu SYSTEM (Verwendung der System-Liste) können Sie auch den Namen einer benutzerdefinierten Liste angeben.

Stoppwort-Liste anpassen

Skript 3. Benutzerdefinierte Liste verwenden

Die System-Liste sollte nicht geändert werden, Sie haben i. d. R. auch nicht die Berechtigung dafür. Zuerst muss dem Archiv also eine eigene Liste hinzugefügt werden, wenn dieses noch die Systemliste verwendet:

CREATE FULLTEXT STOPLIST listenname
FROM SYSTEM STOPLIST;

Skript 4. Einzelnes Wort aus Liste entfernen

ALTER FULLTEXT STOPLIST listenname
DROP 'daswort' LANGUAGE 'German';

Sie können auch mehrere Wörter in einer Abfrage entfernen:


ALTER FULLTEXT STOPLIST listenname DROP 'wort1' LANGUAGE 'German';
ALTER FULLTEXT STOPLIST listenname DROP 'wort2' LANGUAGE 'German';

Skript 5. Der Liste Wörter hinzufügen, die ignoriert werden sollen


ALTER FULLTEXT STOPLIST listenname ADD 'wort1' LANGUAGE 'German';
ALTER FULLTEXT STOPLIST listenname ADD 'wort2' LANGUAGE 'German';

Siehe auch

Microsoft Technet: Konfigurieren und Verwalten von Stoppwörtern und Stopplisten


 

Noch keine Kommentare

Eigenen Kommentar schreiben oder eine Rückfrage stellen

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

Sie können folgende HTML-Tags verwenden: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>