Příznaky
Zvažte následující scénář:
-
Máte tabulku se dvěma nebo víc sloupci datový typ dat v Microsoft SQL serveru 2008 R2.
-
Vytvoříte clusterovaný index, který obsahuje dva nebo víc sloupců s datovým typem dat v tabulce.
-
Vytvořili jste neclusterovaný index v žádném sloupci a zadali jste možnost DATA_COMPRESSION .
V této situaci se zobrazí následující chybová zpráva:
Msg 1944, úroveň 16, stav 1 <řádku>indexu ' <název indexu> ' nebyl vytvořen. Tento index má délku klíče s délkou nejméně <> bajtů. Maximální přípustná délka klíče je <délkou> bajtů.
Příčina
K tomuto problému dochází, protože v tomto scénáři jsou nesprávně vypočítané požadavky na prostor u sloupců datového typu bit .
Řešení
Tento problém byl poprvé opraven následující kumulativní aktualizací SQL serveru.
Kumulativní aktualizace 13 pro SQL Server 2008 R2 SP2 /en-us/help/2967540
Každá nová kumulativní aktualizace pro SQL Server obsahuje všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozí kumulativní aktualizace. Podívejte se na nejnovější kumulativní aktualizace SQL serveru:
Alternativní řešení
Tento problém můžete vyřešit tak, že změníte datový typ sloupců z bitu na tinyint.
Stav
Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny v části Informace v tomto článku jsou určeny pro produkt.