Компонент Full-Text Search (SQL Server)
В SQL Server 2008 предусмотрены возможности для приложений и пользователей, необходимые для выполнения полнотекстовых запросов к символьным данным в таблицах SQL Server. Перед выполнением полнотекстовых запросов на данной таблице администратор базы данных должен создать в таблице полнотекстовый индекс. В полнотекстовый индекс включается один или несколько символьных столбцов в таблице. Эти столбцы могут иметь любой из следующих типов данных: char, varchar, nchar, nvarchar, text, ntext, image, xml, varbinary или varbinary(max). Каждый полнотекстовый индекс индексирует один или несколько столбцов базовой таблицы, и каждому столбцу может соответствовать определенный язык. Начиная с SQL Server 2008 полнотекстовый поиск поддерживает более 50 разных языков, например английский, испанский, китайский, японский, арабский, бенгальский и хинди. Полный список поддерживаемых языков полнотекстового поиска см. в разделе sys.fulltext_languages (Transact-SQL).
Для каждого поддерживаемого языка в SQL Server предусмотрены лингвистические компоненты, в том числе средство разбиения по словам и парадигматический модуль, а также пустой файл тезауруса. Кроме того, для каждого языка полнотекстового поиска в SQL Server предусмотрен файл, в котором могут быть определены синонимы для конкретного языка, позволяющие расширить область поисковых запросов (файл тезауруса). Также начиная с SQL Server 2008 предусмотрен системный список стоп-слов. Для поддержки конкретного языка или бизнес-сценария можно изменять системный список стоп-слов путем добавления или удаления стоп-слов (называемых также пропускаемыми словами), а при необходимости можно создавать дополнительные списки стоп-слов.
В SQL Server предусмотрен набор полнотекстовых предикатов (CONTAINS и FREETEXT) и функций, возвращающих наборы строк (CONTAINSTABLE и FREETEXTTABLE) для написания полнотекстовых запросов. С их помощью приложения и пользователи могут выполнять полнотекстовый поиск различного типа: поиск по одному слову или по одной фразе (в т. ч. с ранжированием результирующего набора); поиск по слову или по фразе, расположенных рядом с другиму словом или фразой; поиск по синонимичным формам конкретного слова.
Примечание |
---|
Full-Text Search является необязательным компонентом компонента SQL Server Database Engine. Дополнительные сведения см. в разделе Установка SQL Server 2008. |
В этом разделе
Общие сведения о полнотекстовом поиске
Администрирование и разработка полнотекстового поиска.Архитектура компонента Full-Text Search
Полностью интегрированная архитектура полнотекстового поиска в SQL Server 2008, в рамках которой внедрено новое средство полнотекстового поиска внутри компонента Database Engine.Администрирование компонента Full-Text Search
Основные понятия развертывания и администрирования, связанные с полнотекстовым поиском.Запросы к SQL Server с использованием компонента Full-Text Search
Предикаты и функции Transact-SQL полнотекстового поиска и различные типы запросов, которые можно выполнять с помощью полнотекстового поиска.Устранение неполадок компонента Full-Text Search
Ответы на часто задаваемые вопросы и основные сведения об устранении неполадок.