Sintomas
Suponha que cria uma chave primária numa coluna que inclui valores decimais ou valores numéricos grandes no Microsoft SQL Server 2012, 2014 ou 2016. Em seguida, crie um índice de texto completo utilizando esta coluna como o índice de chave exclusivo. Nesta situação, se existirem algumas linhas que não possam ser indexadas, o valor da chave de texto completo será registado como um número negativo ou carateres unicode. Por conseguinte, não é possível identificar as linhas que falharam ao serem indexadas.
Resolução
Este problema foi corrigido nas seguintes atualizações cumulativas para SQL Server:
Atualização cumulativa 2 para SQL Server 2016 SP1
Atualização cumulativa 4 para SQL Server 2016
Atualização cumulativa 6 para SQL Server 2012 Service Pack 3
Atualização cumulativa 10 para SQL Server 2014 SP1
Atualização cumulativa 3 para SQL Server 2014 SP2
Acerca das atualizações cumulativas para SQL Server
Cada nova atualização cumulativa para SQL Server contém todos os hotfixes e todas as correções de segurança que foram incluídas com a atualização cumulativa anterior. Consulte as atualizações cumulativas mais recentes para SQL Server:
Atualização cumulativa mais recente para o SQL Server 2016
Atualização cumulativa mais recente para o SQL Server 2014 SP1/SP2
Atualização cumulativa mais recente para o SQL Server 2012
Solução
Para contornar este problema, adicione uma coluna bigint ou int exclusiva à tabela e especifique o texto completo utilizando essa coluna. Int e bigint comunicam corretamente os respetivos valores para o registo de erros de texto completo quando é comunicado um documento ou linha com falha. A coluna exclusiva utilizada pelo texto completo não tem de ser a chave primária da tabela.
Estado
A Microsoft confirmou que se trata de um problema nos produtos Microsoft listados na secção "Aplica-se a".
Referências
Saiba mais sobre a terminologia que a Microsoft utiliza para descrever as atualizações de software.