Symptômes
Supposez que vous créez une clé primaire sur une colonne qui inclut des valeurs décimales ou des valeurs numériques de grande taille dans Microsoft SQL Server 2012, 2014 ou 2016. Ensuite, vous créez un index de texte intégral en utilisant cette colonne en tant qu’index de clé unique. Dans cette situation, s’il n’y a pas de lignes qui n’ont pas pu être indexées, la valeur de la clé de texte intégral sera enregistrée comme un nombre négatif ou un caractère Unicode. Par conséquent, vous ne pouvez pas identifier les lignes qui ne peuvent pas être indexées.
Résolution
Ce problème a été résolu dans les mises à jour cumulatives de SQL Server suivantes :
Mise à jour cumulative 2 pour SQL Server 2016 SP1
Mise à jour cumulative 4 pour SQL server 2016mise à jour cumulative 6 pour SQL Server 2012 Service Pack 3
Mise à jour cumulative 10 pour SQL server 2014 SP1 Cumulative Update 3 pour SQL Server 2014 SP2
Chaque nouvelle mise à jour cumulative pour SQL Server contient tous les correctifs et les correctifs de sécurité inclus dans la mise à jour cumulative précédente. Consultez les dernières mises à jour cumulatives pour SQL Server :
Dernière mise à jour cumulative pour SQL Server 2016
Dernière mise à jour cumulative pour SQL server 2014 SP1/SP2dernière mise à jour cumulative pour SQL Server 2012
Solution de contournement
Pour contourner ce problème, ajoutez une colonne bigint ou int unique à la table et spécifiez le texte intégral en utilisant la colonne à la place. Les valeurs ent et bigint indiquent correctement leurs valeurs au journal des erreurs de texte intégral lorsqu’une ligne ou un document en échec est signalé. La colonne unique utilisée par le texte intégral ne doit pas nécessairement être la clé primaire de la table.
Statut
Microsoft a confirmé l'existence de ce problème dans les produits Microsoft figurant dans la liste des produits concernés par cet article.
Références
Apprenez-en davantage sur la terminologie utilisée par Microsoft pour décrire les mises à jour logicielles.