FIX: Impossible de créer un index non groupé compressé sur une table qui a un index groupé avec deux colonnes de bits ou plus

Symptômes

Prenons l’exemple du scénario suivant :

  • Vous avez une table qui a deux ou plusieurs colonnes de type de données bits dans Microsoft SQL Server 2008 R2.

  • Vous créez un index groupé qui contient deux ou plusieurs colonnes de type de bits sur la table.

  • Vous créez un index non groupé sur n'importe quelle colonne et spécifiez l'option DATA_COMPRESSION.

Dans ce cas, vous recevez l'erreur suivante :

Msg 1944, Niveau 16, État 1, Ligne lt; Numéro deligne'lt; Nom de l'indice 'lt; Nom del'indice'n'a pas été créé. Cet indice a une longueur de clé d'au moins - lt;Longueur'gt; octets. La longueur maximale de la clé permise est de l'alt;Longueuret octets.

Cause

Le problème se produit parce que les exigences d'espace des colonnes de type de données bits sont mal calculées dans ce scénario.

Chaque nouvelle mise à jour cumulative pour SQL Server contient tous les correctifs et toutes les corrections de sécurité qui ont été inclus avec 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, changer le type de données des colonnes de bit à 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 ?

Développez vos compétences
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoindre Microsoft Insider

Ces informations vous ont-elles été utiles ?

Nous vous remercions pour vos commentaires.

Merci pour vos commentaires. Il serait vraisemblablement utile pour vous de contacter l’un de nos agents du support Office.

×