Microsoft distribue les correctifs de Microsoft SQL Server 2008 sous la forme d’un fichier téléchargeable. Étant donné que les correctifs sont cumulatifs, chaque nouvelle version contient tous les correctifs logiciels et tous les correctifs de sécurité inclus dans la version précédente du correctif de SQL Server 2008.
Symptômes
Dans une application, vous utilisez le pilote SQL Server 2008 Native Client. Vous appelez la fonction SQLBindParameter pour lier un paramètre d’un type de données à caractère large pour une requête. Par exemple, vous liez un paramètre de type de données NCHAR ou NVARKAR. L’application transmet une valeur supérieure à 4 000 au paramètre ColumnSize de la fonction SQLBindParameter. Lorsque vous exécutez la requête dans l’application, vous recevez le message d’erreur suivant :
Remarque
Le flux du protocole d’appel de procédure distante (RPC) de flux de données tabulaires (TDS) entrant est incorrect. Paramètre 1 (« « ) : le type de données 0xE7 dont la longueur des données ou la longueur des métadonnées n’est pas valide.
Remarque Ce message d’erreur est un message d’erreur côté serveur. Si l’application utilise le pilote SQL Server 2005 Native Client à la place, le message d’erreur côté client suivant s’affiche comme prévu :
Remarque
[Microsoft][SQL Native Client]Valeur de précision non valide
Cause
Ce problème se produit, car le pilote SQL Server 2008 Native Client n’effectue pas de case activée d’exécution de la taille de la colonne d’entrée pour la fonction SQLBindParameter. En outre, le pilote double la taille de la colonne si la taille de la colonne d’entrée est supérieure à 4 000 et que le paramètre est un type de données à caractère large. Par conséquent, SQL Server renvoie une erreur côté serveur indiquant que le paramètre dépasse la limite supérieure (8 000).
Remarque Le pilote SQL Server 2005 Native Client effectue une vérification d’exécution de la case activée pour la taille de la colonne d’entrée. Par conséquent, si la taille de la colonne d’entrée est supérieure à 8 000, le pilote SQL Server 2005 Native Client renvoie une erreur côté client.
Résolution
Le correctif pour résoudre ce problème a été publié pour la première fois dans la mise à jour cumulative 3 pour SQL Server 2008 Service Pack 1. Pour plus d’informations sur ce package de mise à jour cumulative, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft.
971491 Package de mise à jour cumulative 3 pour SQL Server 2008 Service Pack 1Remarque : les builds étant cumulatives, chaque nouvelle publication de correctif contient tous les correctifs logiciels et tous les correctifs de sécurité inclus dans la version précédente du correctif SQL Server 2008. Microsoft vous recommande d’envisager d’appliquer la publication de correctif la plus récente qui contient ce correctif. Pour plus d’informations, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :
970365 Builds SQL Server 2008 publiées après SQL Server 2008 Service Pack 1
Les correctifs logiciels Microsoft SQL Server 2008 sont créés pour des Service Packs SQL Server spécifiques. Vous devez appliquer un correctif logiciel de SQL Server 2008 Service Pack 1 à une installation de SQL Server 2008 Service Pack 1. Par défaut, tout correctif logiciel fourni dans un Service Pack SQL Server est inclus dans le Service Pack SQL Server suivant.
État
Microsoft a confirmé qu’il s’agissait d’un problème dans les produits Microsoft répertoriés dans la section « S’applique à ».
Références
Pour plus d’informations sur le modèle de maintenance incrémentielle pour SQL Server, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft.
935897 Un modèle de service incrémentiel est disponible auprès de l'équipe SQL Server pour proposer des correctifs pour les problèmes signalés
Pour plus d’informations sur le schéma d’appellation pour les mises à jour de SQL Server, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :
822499 Nouveau schéma d’appellation pour les packages de mise à jour logicielle Microsoft SQL Server
Pour plus d’informations sur la terminologie de mise à jour logicielle, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :
824684 Terminologie standard utilisée pour décrire les mises à jour logicielles Microsoft