Symptômes
Supposons que vous exécutez la procédure stockée sp_describe_undeclared_parameters dans Microsoft SQL Server 2014 ou SQL Server 2012. Lorsque le paramètre non déclaré cible une colonne décimale et qu’il est calculé avec un entier, la procédure stockée retourne un résultat incorrect qui considère le paramètre comme un entier.
Remarque La procédure stockée est appelée en interne par le pilote ODBC lorsque vous appelez la fonction ODBC SQLDescribeParam.
Résolution
Le problème a été résolu pour la première fois dans les mises à jour cumulatives suivantes de SQL Server :
- Mise à jour cumulative 4 pour SQL Server 2014 SP1
- Mise à jour cumulative 11 pour SQL Server 2014
- Mise à jour cumulative 9 pour SQL Server 2012 SP2
Recommandation : Installer la dernière mise à jour cumulative pour SQL Server
Chaque nouvelle mise à jour cumulative pour SQL Server contient tous les correctifs logiciels et tous les correctifs de sécurité inclus dans la mise à jour cumulative précédente. Nous vous recommandons de télécharger et d’installer les dernières mises à jour cumulatives pour SQL Server :
- Dernière mise à jour cumulative pour SQL Server 2014 SP1
- Dernière mise à jour cumulative pour SQL Server 2014
- Dernière mise à jour cumulative pour SQL Server 2012 SP2
Solution de contournement
Pour contourner ce problème, remplacez le type de la colonne décimale par le type numérique ou ajoutez « .0 » à la fin de la constante entière dans l’expression.
État
Microsoft a confirmé qu’il s’agissait d’un problème dans les produits Microsoft répertoriés dans la section « S’applique à ».