Compartilhar via


FULLTEXTCATALOGPROPERTY (Transact-SQL)

Retorna informações sobre propriedades de catálogo de texto completo no SQL Server 2012.

Ícone de vínculo de tópico Convenções de sintaxe Transact-SQL

Sintaxe

FULLTEXTCATALOGPROPERTY ('catalog_name' ,'property')

Argumentos

ObservaçãoObservação

Essa coluna será removida em uma versão futura do SQL Server: LogSize e PopulateStatus. Evite usá-las em um novo projeto de desenvolvimento e planeje a modificação dos aplicativos que as utilizam atualmente.

  • catalog_name
    É uma expressão que contém o nome do catálogo de texto completo.

  • property
    É uma expressão que contém o nome da propriedade do catálogo de texto completo. A tabela lista as propriedades e fornece descrições das informações retornadas.

    Propriedade

    Descrição

    AccentSensitivity

    Configuração da diferenciação de caracteres com/sem acento.

    0 = não diferencia caracteres com/sem acento

    1 = diferencia caracteres com/sem acento

    IndexSize

    Tamanho lógico do catálogo de texto completo em MB (megabytes). Inclui o tamanho da frase-chave semântica e índices de semelhança de documento.

    Para obter mais informações, consulte "Comentários", mais adiante neste tópico.

    ItemCount

    Número de itens indexados que incluem todo o texto completo, frases-chave e índices de semelhança de documento em um catálogo

    LogSize

    Com suporte somente para compatibilidade com versões anteriores. Sempre retorna 0.

    Tamanho, em bytes, do conjunto combinado de logs de erros associado a um catálogo de texto completo do Serviço de Pesquisa do Microsoft.

    MergeStatus

    Se uma mesclagem mestra está em andamento.

    0 = não há mesclagem mestra em andamento.

    1= há mesclagem mestra em andamento

    PopulateCompletionAge

    A diferença em segundos entre a conclusão da última população do índice de texto completo e 01/01/1990 00:00:00.

    Atualizado apenas para rastreamentos completos e incrementais. Retorna 0 caso não haja população.

    PopulateStatus

    0 = Ocioso

    1 = População completa em andamento

    2 = Pausado

    3 = Acelerado

    4 = Recuperando

    5 = Desligado

    6 = População incremental em andamento

    7 = Construindo índice

    8 = O disco está cheio. Pausado.

    9 = Controle de alterações

    UniqueKeyCount

    Número de chaves exclusivas no catálogo de texto completo.

    ImportStatus

    Se o catálogo de texto completo está sendo importado.

    0= O catálogo de texto completo não está sendo importado.

    1= O catálogo de texto completo está sendo importado.

Tipos de retorno

int

Exceções

Retorna NULL no caso de erro ou se um chamador não tiver permissão para exibir o objeto.

No SQL Server 2012, um usuário só pode exibir os metadados de itens protegíveis de sua propriedade ou para os quais ele tenha permissão concedida. Isso significa que as funções internas emissoras de metadados, como FULLTEXTCATALOGPROPERTY, podem retornar NULL se o usuário não tiver permissão no objeto. Para obter mais informações, consulte sp_help_fulltext_catalogs (Transact-SQL).

Comentários

FULLTEXTCATALOGPROPERTY ('catalog_name' ,'IndexSize') examina apenas os fragmentos com status 4 ou 6, como mostrado em sys.fulltext_index_fragments. Estes fragmentos fazem parte do índice lógico. Portanto, a propriedade IndexSize retorna apenas o tamanho de índice lógico. Porém, durante uma mesclagem de índice, o tamanho real do índice pode ser o dobro do seu tamanho lógico. Para localizar o tamanho real que está sendo consumido pelo índice de texto completo durante a mesclagem, use o procedimento armazenado do sistema sp_spaceused. Esse procedimento analisa todos os fragmentos associados a um índice de texto completo. Se você restringir o crescimento do arquivo de catálogo de texto completo e não permitir espaço suficiente para o processo de mesclagem, a população de texto completo poderá falhar. Nesse caso, FULLTEXTCATALOGPROPERTY ('catalog_name' ,'IndexSize') retorna 0 e o seguinte erro é gravado no log de texto completo:

Error: 30059, Severity: 16, State: 1. A fatal error occurred during a full-text population and caused the population to be cancelled. Population type is: FULL; database name is FTS_Test (id: 13); catalog name is t1_cat (id: 5); table name t1 (id: 2105058535). Fix the errors that are logged in the full-text crawl log. Then, resume the population. The basic Transact-SQL syntax for this is: ALTER FULLTEXT INDEX ON table_name RESUME POPULATION.

É importante que os aplicativos não fiquem aguardando em um loop estreito, verificando se a propriedade PopulateStatus se torna ociosa (indicando que a população foi concluída), pois isso remove os ciclos da CPU do banco de dados e dos processos de pesquisa de texto completo, causando tempos limite. Além disso, normalmente a melhor opção é verificar a propriedade PopulateStatus correspondente no nível da tabela, TableFullTextPopulateStatus na função de sistema OBJECTPROPERTYEX. Essa e outras propriedades de texto completo novas em OBJECTPROPERTYEX fornecem informações mais detalhadas sobre as tabelas de indexação de texto completo. Para obter mais informações, consulte OBJECTPROPERTYEX (Transact-SQL).

Exemplos

O exemplo a seguir retorna o número de itens indexados de texto completo de um catálogo de texto completo chamado Cat_Desc.

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

Consulte também

Referência

FULLTEXTSERVICEPROPERTY (Transact-SQL)

funções de metadados (Transact-SQL)

sp_help_fulltext_catalogs (Transact-SQL)