Запросы столбцов varbinary(max) и xml (полнотекстовый поиск)

Если столбец типа данных varbinary(max), varbinary или xml имеет полнотекстовый индекс, то запросы к нему могут выполняться с использованием полнотекстовых предикатов (CONTAINS и FREETEXT) и функций (CONTAINSTABLE и FREETEXTTABLE), как и к любому другому столбцу с полнотекстовым индексом.

Важное примечаниеВажно!

Полнотекстовый поиск работает также со столбцами изображений. Однако тип данных image в следующей версии SQL Server будет удален. Этот тип данных не рекомендуется использовать в новых разработках; следует также запланировать соответствующие изменения в приложениях, где он используется в настоящий момент. Вместо этого пользуйтесь типом данных varbinary(max).

varbinary(max) или данные varbinary

В одном столбце типа данных varbinary(max) или varbinary могут храниться многие типы документов. SQL Server 2008 поддерживает любой тип документов, для которого установлен фильтр, доступный в операционной системе. Тип документа определяется по расширению файла документа. Например, для расширения файла DOC полнотекстовый поиск использует фильтр, который поддерживает документы Microsoft Word. Чтобы получить список доступных типов документов, выполните запрос к представлению каталога sys.fulltext_document_types.

Следует отметить, что средство полнотекстового поиска может использовать существующие фильтры, установленные в операционной системе. Перед использованием фильтров операционной системы, средств разбиения по словам и парадигматических модулей необходимо загрузить их в экземпляр сервера приведенным ниже способом.

EXEC sp_fulltext_service @action='load_os_resources', @value=1;

Чтобы создать полнотекстовый индекс на столбце varbinary(max), средству полнотекстового поиска необходим доступ к расширениям файлов документов в столбце varbinary(max). Эти данные должны храниться в столбце таблицы, который называется «столбец типов» и должен быть связан со столбцом varbinary(max) в полнотекстовом индексе. При индексировании документа средство полнотекстового поиска определяет нужный фильтр по расширению файла в столбце типов.

XML-данные

В столбце типа данных xml хранятся только XML-документы и фрагменты, и для документов используется только XML-фильтр. Поэтому столбец типа не нужен. На столбцах xml полнотекстовый индекс индексирует содержимое XML-элементов, но не учитывает XML-разметку. К значениям атрибута, если они не являются числовыми значениями, применяется полнотекстовый индекс. Теги элементов используются в качестве границ лексем. Поддерживаются XML- или HTML-документы и фрагменты правильного формата, содержащие несколько языков.

Дополнительные сведения о выполнении запросов к столбцу xml см. в разделе Полнотекстовый индекс XML-столбца.

См. также

Справочник

Основные понятия