Поделиться через


FULLTEXTCATALOGPROPERTY (Transact-SQL)

Возвращает сведения о свойствах полнотекстовых каталогов.

Значок ссылки на разделСинтаксические обозначения в Transact-SQL

Синтаксис

FULLTEXTCATALOGPROPERTY ('catalog_name' ,'property')

Аргументы

ПримечаниеПримечание

Следующие свойства будут удалены в будущей версии SQL Server: LogSize и PopulateStatus. Избегайте использовать эти свойства в новых разработках и запланируйте изменение приложений, где они используются в настоящий момент.

  • catalog_name
    Выражение, содержащее имя полнотекстового каталога.

  • property
    Выражение, содержащее имя свойства полнотекстового каталога. В таблице перечислены свойства и описания возвращаемых сведений.

    Свойство

    Описание

    AccentSensitivity

    Настройка учета диакритических знаков:

    0 = без учета диакритических знаков;

    1 = с учетом диакритических знаков.

    IndexSize

    Логический размер полнотекстового каталога в мегабайтах (МБ).

    Дополнительные сведения см. в подразделе «Примечания» далее в этом разделе.

    ItemCount

    Количество полнотекстовых индексированных элементов в полнотекстовом каталоге.

    LogSize

    Поддерживается только для обеспечения обратной совместимости. Всегда возвращает значение 0.

    Размер в байтах связанного набора журналов ошибок, связанных с полнотекстовым каталогом Microsoft Search Service.

    MergeStatus

    Выполняется ли слияние в единый файл.

    0 = слияние в единый файл не выполняется;

    1 = слияние в единый файл выполняется.

    PopulateCompletionAge

    Разница в секундах между завершением последнего заполнения полнотекстового индекса и 01/01/1990 00:00:00.

    Обновляется только для полного и последовательного сканирования. Возвращает значение 0, если заполнение не выполнялось.

    PopulateStatus

    0 = бездействие

    1 = выполняется полное заполнение

    2 = приостановлено

    3 = ожидание истечения интервала повтора

    4 = восстановление

    5 = выключение

    6 = выполняется добавочное заполнение

    7 = построение индекса

    8 = диск заполнен, приостановлено.

    9 = отслеживание изменений

    UniqueKeyCount

    Количество уникальных ключей в полнотекстовом каталоге.

    ImportStatus

    Выполняется ли в настоящее время импорт полнотекстового каталога.

    0 = импорт полнотекстового каталога не выполняется.

    1 = выполняется импорт полнотекстового каталога.

Типы возвращаемых данных

int

Исключения

Возвращает значение NULL в случае ошибки или если участник не имеет разрешений для просмотра объекта.

В SQL Server 2008 пользователь может просматривать только метаданные защищаемых объектов, которыми он владеет или на которые ему были предоставлены разрешения. Это означает, что встроенные функции, создающие метаданные, такие как FULLTEXTCATALOGPROPERTY, могут вернуть значение NULL в случае, если пользователь не имеет разрешений на объект. Дополнительные сведения см. в разделах Настройка видимости метаданных и Устранение неполадок, связанных с видимостью метаданных.

Замечания

Инструкция FULLTEXTCATALOGPROPERTY ('catalog_name' ,'IndexSize') анализирует только фрагменты с состоянием 4 или 6, указанным в sys.fulltext_index_fragments. Данные фрагменты являются частью логического индекса. Поэтому свойство IndexSize возвращает только логический размер индекса. При слиянии индексов фактический размер индекса может в два раза превышать его логический размер. Чтобы определить фактический размер, который поглощается полнотекстовым индексом при слиянии, используйте системную хранимую процедуру sp_spaceused. При выполнении этой процедуры анализируются все фрагменты, связанные с полнотекстовым индексом.

Важно, чтобы приложение не проверяло в непрерывном цикле свойство PopulateStatus до перехода в состояние бездействия (показывая, что сбор данных завершен), так как это отнимает время ЦП от обработки базы данных и выполнения полнотекстового поиска и приводит к дополнительным задержкам. В добавление к этому обычно лучший параметр для проверки соответствующего свойства PopulateStatus на уровне таблицы — свойство TableFullTextPopulateStatus в системной функции OBJECTPROPERTYEX. Это и другие полнотекстовые свойства в функции OBJECTPROPERTYEX предоставляют более подробные сведения о таблицах с полнотекстовым индексированием. Дополнительные сведения см. в разделе OBJECTPROPERTYEX (Transact-SQL).

Примеры

Следующий пример возвращает количество полнотекстовых индексированных элементов в полнотекстовом каталоге Cat_Desc.

USE AdventureWorks;
GO
SELECT fulltextcatalogproperty('Cat_Desc', 'ItemCount');
GO