https://www.simple -talk.com / SQL / учиться-SQL-сервер / понимание-полнотекстовой индексации в-SQL-сервер /
CREATE TABLE ProductDocs (
DocID INT NOT NULL IDENTITY,
DocTitle NVARCHAR(50) NOT NULL,
DocFilename NVARCHAR(400) NOT NULL,
FileExtension NVARCHAR(8) NOT NULL,
DocSummary NVARCHAR(MAX) NULL,
DocContent VARBINARY(MAX) NULL,
CONSTRAINT [PK_ProductDocs_DocID] PRIMARY KEY CLUSTERED (DocID ASC)
)
CREATE FULLTEXT INDEX ON ProductDocs
(DocSummary, DocContent TYPE COLUMN FileExtension LANGUAGE 1033)
KEY INDEX PK_ProductDocs_DocID
ON ProductFTS
WITH STOPLIST = SYSTEM
В первой строке оператора содержится предложение ON, в котором указывается имя таблицы (в данном случае ProductDocs). Следующая строка оператора - это список столбцов, которые должны быть проиндексированы (DocSummary и DocContent).
Следующая строка оператора CREATE FULLTEXT INDEX в предыдущем примере - это предложение KEY INDEX. Это имя индекса уникального ключа (в данном случае PK_ProductDocs_DocID), определенного в таблице ProductDocs. При указании полнотекстового индекса обязательно указывайте имя индекса, а не имя столбца.
После предложения KEY INDEX в определении полнотекстового индекса следует предложение ON, в котором указывается имя полнотекстового каталога (ProductFTS), к которому присоединяется индекс. В SQL Server 2008 вы также можете указать файловую группу, в которой будет храниться индекс. Однако этот параметр недоступен в SQL Server 2005, поскольку сопоставление файловых групп находится на уровне каталога.
Последнее предложение в примере инструкции CREATE FULLTEXT INDEX - WITH STOPLIST. Этот параметр, доступный только в SQL Server 2008, позволяет указать имя стоп-листа, который будет использоваться для этого индекса. В этом случае используется системный стоп-лист, но вы можете указать пользовательский стоп-лист. (Стоплисты более подробно описаны ниже в статье.)