Skip to content

Volltextsuche einrichten

Die Volltextsuche wird direkt auf dem SQL Server eingerichtet. Die beschriebenen Schritte werden im SQL Server Management Studio ausgeführt.

SELECT * FROM sys.fulltext_document_types

Dokumente können in die Volltextsuche aufgenommen werden, wenn für das jeweilige Dateiformat ein passender iFilter verfügbar ist.

Fehlende Filter werden im Betriebssystem installiert und stehen danach auch SQL Server zur Verfügung.

Adobe PDF iFilter

Unter Windows Server 2012 und Windows 8 sind diese Filter in vielen Fällen bereits enthalten.

Microsoft Download

Falls neue Filter nach der Installation nicht in SQL Server auftauchen, starten Sie den SQL-Server-Dienst neu.

In den Grundeinstellungen ist die Volltextsuche für Dokumente zunächst deaktiviert.

Das folgende SQL-Skript aktiviert die Volltextsuche für Dokumente.

Eventuell muss PK__ft_Dokum__3214EC27216E511F durch den tatsächlichen Namen des Primärschlüssels der Tabelle ft_Dokumente ersetzt werden.

EXEC sp_fulltext_database 'enable'
IF NOT EXISTS (SELECT TOP(1) * FROM sys.fulltext_catalogs WHERE name = 'KATALOG_Dokumente')
BEGIN
EXEC sp_fulltext_catalog 'KATALOG_Dokumente', 'create';
END
CREATE FULLTEXT INDEX ON dbo.ft_Dokumente
(FileName, FileData TYPE COLUMN FileExtension)
KEY INDEX PK__ft_Dokum__3214EC27216E511F
ON KATALOG_Dokumente
WITH CHANGE_TRACKING AUTO, STOPLIST OFF
ALTER FULLTEXT INDEX ON [dbo].[ft_Dokumente] ENABLE
ALTER FULLTEXT INDEX ON [dbo].[ft_Dokumente] SET CHANGE_TRACKING = AUTO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[FTS_ft_Dokumente]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT'))
BEGIN
execute dbo.sp_executesql @statement = N'
CREATE function [dbo].[FTS_ft_Dokumente]
(@search nvarchar(4000))
returns table
as
return (select [KEY],[RANK] from containstable([ft_Dokumente],*,@search))
'
END