S’applique à
SQL Server 2008 R2 Service Pack 2 SQL Server 2008 R2 Developer SQL Server 2008 R2 Enterprise SQL Server 2008 R2 Standard

Symptômes

Prenons l’exemple du scénario suivant :

  • Une table comporte au moins deux colonnes de type de données bit dans Microsoft SQL Server 2008 R2.

  • Vous créez un index clusterisé contenant au moins deux colonnes de type de données bit sur la table.

  • Vous pouvez créer un index non clusterisé sur n’importe quelle colonne et spécifier l’option DATA_COMPRESSION .

Dans ce cas, le message d’erreur suivant apparaît :

MSG 1944, niveau 16, état 1, ligne <numéro de ligne>index' <nom de l' index> 'n’a pas été créé. Ce paramètre a une longueur de clé d’au moins <longueur> octets. La longueur de la clé maximale autorisée est <longueur> octets.

Cause

Ce problème survient parce que l’espace requis pour les colonnes de type de données bit est calculé de manière incorrecte dans ce scénario.

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 :

Solution de contournement

Pour contourner ce problème, remplacez le type de données de bit par tinyint.

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.

Besoin d’aide ?

Vous voulez plus d’options ?

Explorez les avantages de l’abonnement, parcourez les cours de formation, découvrez comment sécuriser votre appareil, etc.