A Microsoft distribui as correções do Microsoft SQL Server 2008 R2 Service Pack 1 (SP1) ou Microsoft SQL Server 2012 como um ficheiro transferível. Como as correções são cumulativas, cada nova versão contém todos os hotfixes e todas as atualizações de segurança que foram incluídas com a versão anterior do SQL Server 2008 R2 Service Pack 1 (SP1) ou SQL Server 2012.
Sintomas
Tenha em conta o seguinte cenário:
Executar uma consulta MDX (Multidimensional Expressions) complexa em uma instância do Microsoft SQL Server 2008 R2 Analysis Services (SSAS 2008 R2) ou uma instância do Microsoft SQL Server 2012 Analysis Services (SSAS 2012).
As seguintes condições são verdadeiras para a consulta MDX:
- A consulta MDX utiliza a função NONEMPTY.
- A cláusula WHERE da consulta MDX tem um conjunto nomeado.
- Um conjunto de eixos da consulta MDX e o conjunto nomeado utilizam hierarquias das mesmas dimensões.
Neste cenário, poderá receber a seguinte mensagem de erro:
Nota
A expressão contém uma função que não pode operar num conjunto com mais de 4.294.967.296 tuplas.
Observação Esse problema também ocorre no Microsoft SQL Server 2008 Analysis Services (SSAS 2008).
Resolução
Informações de atualização cumulativa
SQL Server 2012
A correção para esse problema foi lançada pela primeira vez na Atualização Cumulativa 1 de SQL Server 2012. Para obter mais informações sobre este pacote de atualização cumulativa, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
2679368 Pacote de atualizações cumulativas 1 para SQL Server 2012Nota Como as compilações são cumulativas, cada nova versão de correção contém todos os hotfixes e todas as correções de segurança que foram incluídas com o anterior SQL Server 2012 corrigir lançamento. A Microsoft recomenda que você considere aplicar o lançamento de correção mais recente que contém esse hotfix. Para mais informações, clique no número de artigo que se segue para ver o artigo na Base de Dados de Conhecimento Microsoft:
2692828 As compilações do SQL Server 2012 lançadas após o lançamento do SQL Server 2012 Tem de aplicar uma correção do SQL Server 2012 a uma instalação do SQL Server 2012.
Pacote de atualizações cumulativas 3 para SQL Server 2008 R2 SP1
A correção para este problema foi lançada pela primeira vez no pacote de atualização cumulativa 3. Para mais informações sobre como obter este pacote de actualização cumulativa para o SQL Server 2008 R2 SP1, clique no número de artigo que se segue para ver o artigo na Base de Dados de Conhecimento Microsoft:
2591748 Pacote de atualizações cumulativas 3 para SQL Server 2008 R2 SP1Nota Como as compilações são cumulativas, cada nova versão de atualização contém todos os hotfixes e todas as atualizações de segurança que foram incluídas com a versão anterior da atualização SQL Server 2008 R2 SP1. Recomendamos que você considere aplicar a versão de atualização mais recente que contém esse hotfix. Para mais informações, clique no número de artigo que se segue para ver o artigo na Base de Dados de Conhecimento Microsoft:
2567616 As compilações do SQL Server 2008 R2 lançadas após o lançamento do SQL Server 2008 R2 SP1
Solução
Para contornar este problema, utilize a cláusula NON EMPTY em vez da função NONEMPTY e remova as diferentes granularidades ou outros tipos de conjuntos de formas arbitrárias na cláusula WHERE.
Estado
A Microsoft confirmou que se trata de um problema nos produtos Microsoft listados na secção "Aplica-se a".