Konfigurieren und Verwalten von Filtern

Gilt für:SQL ServerAzure SQL-DatenbankVerwaltete Azure SQL-Instanz

Für das Indizieren von Dokumenten in einer Varbinary(max)-, Bild- oder XML-Datentypspalte ist eine zusätzliche Verarbeitung erforderlich. Ein Filter führt diese Verarbeitung aus. Der Filter extrahiert die Textinformationen aus dem Dokument (hierbei wird die Formatierung entfernt). Der Filter überträgt den Text anschließend an die Komponente für die Wörtertrennung für die Sprache, die der Tabellenspalte zugeordnet ist.

Filter und Dokumenttypen

Ein bestimmter Filter ist immer spezifisch für einen bestimmten Dokumenttyp (DOC, PDF, XLS, XML usw.). Diese Filter implementieren die IFilter-Schnittstelle. Weitere Informationen zu diesen Dokumenttypen erhalten Sie, indem Sie die sys.fulltext_document_types -Katalogsicht abfragen.

Binäre Dokumente können in einer einzelnen varbinary(max) - oder image -Spalte gespeichert werden. SQL Server wählt für jedes Dokument anhand der Dateierweiterung den entsprechenden Filter aus. Da die Dateierweiterung nicht sichtbar ist, wenn die Datei in einer varbinary(max) - oder image -Spalte gespeichert wird, muss die Dateierweiterung (DOC, XLS, PDF usw.) in einer separaten Spalte der Tabelle gespeichert werden. Diese wird als Typspalte bezeichnet. Die Typspalte kann einen beliebigen zeichenbasierten Datentyp aufweisen. Sie enthält die Dokumentdateierweiterung, beispielsweise DOC für ein Microsoft Word-Dokument. In der Document-Tabelle in Adventure Works hat die Document-Spalte den Typ varbinary(max), und die Typspalte FileExtension hat den Typ nvarchar(8).

So zeigen Sie die Typspalte in einem vorhandenen Volltextindex an

Hinweis

Ein Filter kann ggf. eingebettete Objekte im übergeordneten Objekt behandeln. Dies ist abhängig von der Implementierung des Filters. Filter werden in SQL Server jedoch nicht für das Verfolgen von Links zu anderen Objekten konfiguriert.

Anzeigen installierter Filter

Um zu sehen, welche Dokumenttypen und Filter in der Instanz registriert sind, verwenden Sie eine der folgenden Methoden:

Standardfilter

Die Standardfilter, die SQL Server standardmäßig installiert, hängen von der Version der Volltextkomponente ab:

  • Version 1 (SQL Server 2022 (16.x) und früher): Die integrierten Filter decken Nur-Text-, HTML- und XML-Dokumente ab. Zum Indizieren von Microsoft Office und anderen Dokumentformaten können Sie alle bereits auf dem Betriebssystem installierten Filter verwenden. Sie können auch zusätzliche Filter installieren, einschließlich der Microsoft Office 2010 Filter Packs oder anderer Filter, die nicht Microsoft sind. Weitere Informationen finden Sie unter Anpassen von Version 1-Filtern und Worttrennungen.

  • Version 2 (SQL Server 2025 (17.x) und höher): Die integrierten Filter decken zusätzlich zu HTML und XML Microsoft Office, OpenDocument, OneNote und Outlook Dokumenten ab. Weitere Informationen finden Sie unter Anpassen von Version 2-Filtern und Worttrennungen.

Die vollständige Liste der Filterbinärdateien und die Dateierweiterungen, die sie in jeder Version behandeln, finden Sie unter Volltextfilterbinärdateien.

Hinweis

Selbst mit der neuesten Version des Office Filter Packs, die .xlsx unterstützt, unterstützt SQL Server keine Strict Open XML-Tabellen. Es wird kein Fehler zurückgegeben; SQL Server indiziert einfach nicht den Inhalt beliebiger Strict Open XML-Kalkulationstabellen.