Compartilhar via


Alterações recentes na pesquisa de texto completo

Este tópico descreve as alterações recentes feitas na pesquisa de texto completo. Essas alterações podem danificar aplicativos, scripts ou funcionalidades baseados em versões anteriores do SQL Server. Talvez você tenha esses problemas ao atualizar. Para obter mais informações, consulte Use Upgrade Advisor to Prepare for Upgrades.

Alterações interruptivas na pesquisa de Full-Text no SQL Server 2014

Informações que virão posteriormente.

Alterações interruptivas na pesquisa de Full-Text no SQL Server 2012

Ordenação alterada para o nome Coluna em sys.fulltext_languages

A ordenação da coluna nome do idioma na exibição de catálogo sys.fulltext_languages (Transact-SQL) foi alterada da ordenação fixa do banco de dados de recursos para a ordenação padrão selecionada para a instância do SQL Server. Essa alteração possibilita comparar os valores na coluna name quando você ingressa na exibição sys.syslanguages (Transact-SQL) com sys.fulltext_languages. Por exemplo, você pode consultar todos os bancos de dados onde o idioma de texto completo padrão é diferente do idioma de banco de dados padrão.

Analisando as alterações feitas na pesquisa de texto completo no SQL Server 2008

As seguintes alterações interruptivas se aplicam ao Full-Text Search entre SQL Server 2005 e SQL Server 2008 e versões posteriores.

Recurso Cenário SQL Server 2005 SQL Server 2008 e versões posteriores
CONTAINSTABLE com UDTs (tipos definidos pelo usuário) A chave de texto completo é um tipo SQL Server definido pelo usuário, por exemplo, MyType = char(1). A chave retornada é do tipo atribuído ao tipo definido pelo usuário.

No exemplo, isso seria char(1).
A chave retornada é do tipo definido pelo usuário. No exemplo, esse seria MyType.
parâmetro top_n_by_rank (das instruções Transact-SQL CONTAINSTABLE e FREETEXTTABLE) top_n_by_rank consultas usando 0 como o parâmetro . Falha com uma mensagem de erro, indicando que você deve usar um valor maior que zero. Tem êxito, não retornando nenhuma linha.
CONTAINSTABLE e ItemCount Excluir linhas da tabela base antes do envio por push de alterações para MSSearch. CONTAINSTABLE retorna registro fantasma. ItemCount não foi alterado. CONTAINSTABLE não retorna nenhum registro fantasma.
ItemCount A tabela contém colunas de tipo ou documentos nulos. Além dos documentos indexados, os documentos que são nulos ou que têm tipos nulos são contados no valor ItemCount . Somente documentos indexados são contados no valor ItemCount .
ItemCount do Catálogo Coluna blob com uma extensão NULL. Ele é contado em ItemCount do catálogo Ele não é contado em ItemCount do catálogo.
UniqueKeyCount Consultar uma contagem de chave exclusiva a partir de um catálogo, por exemplo, duas tabelas (table1 e table2) em que cada uma tem três palavras: word1, word2 e word3. UniqueKeyCount = 9. A tabela a seguir resume como esse valor é obtido:

table1 = 3

EOF para índice de texto completo de table1 = 1

table2 = 3

EOF para índice de texto completo de table2 = 1

catálogo de texto completo = 1
Para cada tabela, UniqueKeyCount é o número de palavras-chave distintas + 1 (0xFF). Isso NÃO trata as mesmas palavras em > um documento como uma nova chave exclusiva.

Para um catálogo, UniqueKeyCount é a soma de UniqueKeyCount de cada uma das tabelas no catálogo. Palavras idênticas de tabelas diferentes são tratadas como chaves exclusivas. Nesse caso, a contagem de chaves exclusivas é 8.
opção pré-compilar nível de servidor de classificação Otimização do desempenho de consultas FREETEXTTABLE. Quando a opção é definida como 1, as consultas FREETEXTTABLE especificadas com top_n_by_rank usam dados de classificação pré-compilados armazenados nos catálogos de texto completo. Não tem suporte.
sp_fulltext_pendingchanges ao atualizar a coluna de chave Atualizar a coluna de chave de texto completo em uma linha de uma tabela de 2 linhas e executar sp_fulltext_pendingchanges. As duas linhas aparecem. Somente uma linha aparece.
Funções embutidas Funções embutidas com um operador de texto completo Retorna uma mensagem de erro. Retorna as linhas relevantes.
sp_fulltext_database Habilitar ou desabilitar pesquisa de texto completo usando sp_fulltext_database. Nenhum resultado é retornado para consultas de texto completo. Se o texto completo estiver desabilitado para o banco de dados, não serão permitidas operações de texto completo. Retorna resultados para consultas de texto completo e operações de texto completo permitidas, mesmo se o texto completo estiver desabilitado para o banco de dados.
Palavras irrelevantes (stop words) específicas da localidade Consulta variantes específicas de inlocale de uma linguagem pai, como francês belga e francês canadense. As consultas variantes específicas de inlocale são processadas pelos componentes (separadores de palavras, lematizadores e palavras irrelevantes) de sua linguagem pai. Por exemplo, os componentes de francês (França) são usados para analisar francês (Bélgica). Você deve adicionar palavras irrelevantes explicitamente para cada identificador de localidade (LCID). Por exemplo, você precisaria especificar um LCID para Bélgica, Canadá e França.
Processo de lematização do dicionário de sinônimos Usando o dicionário de sinônimos e formas flexivas (lematização). Uma palavra do dicionário de sinônimos é lematizada automaticamente depois de sua expansão. Se você deseja a forma lematizada na expansão, precisará adicionar explicitamente a forma lematizada.
Caminho de catálogo de texto completo e grupo de arquivos Trabalhando com catálogos de texto completo. Cada catálogo de texto completo tem um caminho físico e pertence a um grupo de arquivos. Ele é tratado como um arquivo de banco de dados. Um catálogo de texto completo é um objeto virtual; ele não pertence a nenhum grupo de arquivos. Um catálogo de texto completo é um conceito lógico que faz referência a um grupo de índices de texto completo.

Observação: SQL Server instruções DDL 2005Transact-SQL que especificam catálogos de texto completo funcionam corretamente.
sys.fulltext_catalogs Usando o caminho, data_space_id e file_id dessa exibição de catálogo. Essas colunas retornam um valor específico. Essas colunas retornam NULL porque o catálogo de texto completo não está mais localizado no sistema de arquivos.
sys.sysfulltextcatalogs Usando a coluna de caminho dessa tabela de sistema preterida. Retorna o caminho do sistema de arquivos do catálogo de texto completo. Retorna NULL porque o catálogo de texto completo não está mais localizado no sistema de arquivos.
sp_help_fulltext_catalogs

sp_help_fulltext_catalogs_cursor
Usando a coluna PATH desses procedimentos armazenados preteridos. Retorna o caminho do sistema de arquivos do catálogo de texto completo. Retorna NULL porque o catálogo de texto completo não está mais localizado no sistema de arquivos.
sp_help_fulltext_catalog_components Usando sp_help_fulltext_catalog_components desse procedimento armazenado. Retorna uma lista de todos os componentes (filtros, separadores de palavras e manipuladores de protocolo) usados em todos os catálogos de texto completo do banco de dados atual. Retorna linhas vazias.
DATABASEPROPERTYEX Usando a propriedade IsFullTextEnabled . A configuração IsFullTextEnabled indica se a pesquisa de texto completo está habilitada em um determinado banco de dados. O valor dessa coluna não tem nenhum efeito. Os bancos de dados de usuário são sempre habilitados para pesquisa de texto completo.

Consulte Também

Alterações de comportamento em pesquisa de texto completo
Pesquisa de texto completo