Compartilhar via


sp_fulltext_column (Transact-SQL)

Aplica-se a: SQL Server Azure Synapse Analytics

Especifica se ou não uma determinada coluna de uma tabela participa da indexação de texto completo.

Importante

Esse recurso será removido em uma versão futura do SQL Server. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam. Em vez disso, use ALTER FULLTEXT INDEX .

Convenções de sintaxe de Transact-SQL

Sintaxe

sp_fulltext_column
    [ @tabname = ] N'tabname'
    , [ @colname = ] N'colname'
    , [ @action = ] 'action'
    [ , [ @language = ] language ]
    [ , [ @type_colname = ] N'type_colname' ]
[ ; ]

Argumentos

@tabname [ = ] N'tabname'

Um nome de tabela de uma ou duas partes. A tabela deve existir no banco de dados atual. A tabela deve ter um índice de texto completo. @tabname é nvarchar(517), sem padrão.

@colname [ = ] N'colname'

O nome de uma coluna em @tabname. A coluna deve ser um caractere, varbinary(max) ou image e não pode ser uma coluna computada. @colname é sysname, sem padrão.

O SQL Server pode criar índices de texto completo de dados de texto armazenados em colunas do tipo de dados varbinary(max) ou image . Imagens e imagens não são indexadas.

@action [ = ] 'ação'

A ação a ser executada. @action é varchar(20), sem padrão, e pode ser um dos seguintes valores.

Valor Descrição
add Adiciona @colname de @tabname ao índice de texto completo inativo da tabela. Esta ação habilita a coluna para indexação de texto completo.
remover Remove @colname de @tabname do índice de texto completo inativo da tabela.

@language [ = ] língua

O idioma dos dados armazenados na coluna. @language é int, com um padrão de NULL. Para obter uma lista de idiomas incluídos no SQL Server, consulte sys.fulltext_languages.

Observação

Use Neutral quando uma coluna contém dados em vários idiomas ou em um idioma sem suporte. O padrão é especificado pela opção de configuração do servidor default full-text language.

@type_colname [ = ] N'type_colname'

O nome de uma coluna em @tabname que contém o tipo de documento de @colname. Essa coluna deve ser char, nchar, varchar ou nvarchar. Ele só é usado quando o tipo de dados de @colname é do tipo varbinary(max) ou image. @type_colname é sysname, com um padrão de NULL.

Valores do código de retorno

0 (sucesso) ou 1 (falha).

Conjunto de resultados

Nenhum.

Comentários

Se o índice de texto completo estiver ativo, qualquer população em andamento será interrompida. Além disso, se uma tabela com um índice de texto completo ativo tiver o controle de alterações habilitado, o SQL Server garantirá que o índice seja atual. Por exemplo, o SQL Server interrompe qualquer população atual na tabela, descarta o índice existente e inicia uma nova população.

Se o controle de alterações estiver ativo e for necessário adicionar ou descartar colunas do índice de texto completo, mas mantendo o índice preservado, a tabela deverá ser desativada e as colunas necessárias deverão ser adicionadas ou descartadas. Essas ações congelam o índice. A tabela pode ser ativada mais tarde, quando o início de uma população for praticável.

Permissões

O usuário deve ser membro da função de banco de dados fixa db_ddladmin , membro da função de banco de dados fixa db_owner ou proprietário da tabela.

Exemplos

O exemplo a seguir adiciona a coluna DocumentSummary da tabela Document ao índice de texto completo da tabela.

USE AdventureWorks2022;
GO
EXEC sp_fulltext_column 'Production.Document', DocumentSummary, 'add';
GO

O exemplo a seguir supõe que você criou um índice de texto completo em uma tabela chamada spanishTbl. Para adicionar a coluna spanishCol ao índice de texto completo, execute o seguinte procedimento armazenado:

EXEC sp_fulltext_column 'spanishTbl', 'spanishCol', 'add', 0xC0A;
GO

Quando você executa esta consulta:

SELECT *
FROM spanishTbl
WHERE CONTAINS (spanishCol, 'formsof(inflectional, trabajar)');

O conjunto de resultados inclui linhas com formas diferentes de trabajar (trabalhar), como trabajo, trabajamose trabajan.

Observação

Todas as colunas listadas em uma única cláusula de função de consulta de texto completo devem usar o mesmo idioma.