KB2606211 – OPRAVA: Chyba, pokud má složitý dotaz MDX klauzuli NONEMPTY ve službě SSAS 2008 R2 nebo ve službě SSAS 2012, pokud má klauzule WHERE pojmenovanou sadu

Platí pro
SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Express SQL Server 2012 Standard SQL Server 2012 Web

Microsoft distribuuje opravy pro Microsoft SQL Server 2008 R2 Service Pack 1 (SP1) nebo Microsoft SQL Server 2012 jako jeden soubor ke stažení. Vzhledem k tomu, že opravy jsou kumulativní, obsahuje každá nová verze všechny opravy hotfix a všechny aktualizace zabezpečení, které byly součástí předchozí verze aktualizace pro SQL Server 2008 R2 Service Pack 1 (SP1) nebo SQL Server 2012.

Příznaky

Vezměte v úvahu následující scénář:

  • Složitý dotaz na multidimenzionální výrazy (MDX) spustíte v instanci služby Microsoft SQL Server 2008 R2 Analysis Services (SSAS 2008 R2) nebo v instanci Microsoft SQL Server 2012 Analysis Services (SSAS 2012).

  • Pro dotaz MDX platí tyto podmínky:

    • Dotaz MDX používá funkci NONEMPTY.
    • Klauzule WHERE dotazu MDX má pojmenovanou sadu.
    • Sada os dotazu MDX a pojmenovaná sada používají hierarchie se stejnými dimenzemi.

V takovém případě se může zobrazit následující chybová zpráva:

Poznámka

Výraz obsahuje funkci, která nemůže pracovat s množinou s více než 4 294 967 296 řazenými kolekcemi členů.

Poznámka: K tomuto problému dochází také ve službě Microsoft SQL Server 2008 Analysis Services (SSAS 2008).

Řešení

Informace o kumulativní aktualizaci

SQL Server 2012

Oprava tohoto problému byla poprvé vydána v kumulativní aktualizaci 1 pro SQL Server 2012. Další informace o tomto balíčku kumulativních aktualizací naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:

2679368 Balíček kumulativní aktualizace 1 pro SQL Server 2012Poznámka: Vzhledem k tomu, že buildy jsou kumulativní, obsahuje každá nová verze opravy všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozí verze opravy pro SQL Server 2012. Společnost Microsoft doporučuje zvážit použití nejnovější verze opravy, která obsahuje tuto opravu hotfix. Další informace naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:

2692828 Buildy SQL Server 2012 vydané po vydání SQL Server 2012 Opravu hotfix pro SQL Server 2012 musíte použít u instalace SQL Server 2012.

Balíček kumulativní aktualizace 3 pro SQL Server 2008 R2 SP1

Oprava tohoto problému byla poprvé vydána v balíčku kumulativní aktualizace 3. Další informace o získání tohoto balíčku kumulativních aktualizací pro SQL Server 2008 R2 SP1 naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:

2591748 Balíček kumulativní aktualizace 3 pro SQL Server 2008 R2 SP1Poznámka: Vzhledem k tomu, že tyto buildy jsou kumulativní, obsahuje každé nové vydání aktualizace všechny opravy hotfix a všechny aktualizace zabezpečení, které byly součástí předchozího vydání aktualizace SQL Server 2008 R2 SP1. Doporučujeme, abyste zvážili použití nejnovější verze aktualizace, která obsahuje tuto opravu hotfix. Další informace naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:

2567616 Buildy SQL Server 2008 R2, které byly vydány po vydání aktualizace SP1 SQL Server 2008 R2

Alternativní řešení

Pokud chcete tento problém obejít, použijte místo funkce NONEMPTY klauzuli NON EMPTY a odeberte z klauzule WHERE různé granularity nebo jiné druhy libovolných sad tvarů.

Stav

Společnost Microsoft potvrdila, že se jedná o problém produktů Microsoft, které jsou uvedeny v sekci Platí pro.