Microsoft distribuisce Microsoft SQL Server 2008 R2 Service Pack 1 (SP1) o Microsoft SQL Server 2012 correzioni come un file scaricabile. Poiché le correzioni sono cumulative, ogni nuova versione contiene tutti gli hotfix e tutti gli aggiornamenti della sicurezza inclusi nella versione precedente di SQL Server 2008 R2 Service Pack 1 (SP1) o SQL Server 2012 Update.
Sintomi
Considerare lo scenario descritto di seguito:
-
Si esegue una query MDX (Multidimensional Expression) complessa in un'istanza di Microsoft SQL Server 2008 R2 Analysis Services (SSAS 2008 R2) o un'istanza di Microsoft SQL Server 2012 Analysis Services (SSAS 2012).
-
Le condizioni seguenti sono vere per la query MDX:
-
La query MDX usa la funzione NonEmpty .
-
La clausola where della query MDX include un set denominato.
-
Un set di assi della query MDX e il set denominato usano le gerarchie delle stesse dimensioni.
-
In questo scenario potrebbe essere visualizzato il messaggio di errore seguente:
L'espressione contiene una funzione che non può funzionare su un set con più di 4.294.967.296 Tuple.
Nota Questo problema si verifica anche in Microsoft SQL Server 2008 Analysis Services (SSAS 2008).
Risoluzione
Informazioni sull'aggiornamento cumulativo
SQL Server 2012
La correzione di questo problema è stata rilasciata per la prima volta in aggiornamento cumulativo 1 per SQL Server 2012. Per altre informazioni su questo pacchetto di aggiornamento cumulativo, fare clic sul numero dell'articolo della Microsoft Knowledge Base seguente per visualizzare l'articolo:
2679368 Pacchetto di aggiornamento cumulativo 1 per SQL Server 2012Nota Poiché le build sono cumulative, ogni nuova versione di correzione contiene tutti gli hotfix e tutti gli aggiornamenti della sicurezza inclusi nella versione precedente di SQL Server 2012 FIX. Microsoft consiglia di applicare l'ultima versione di correzione che contiene questo hotfix. Per ulteriori informazioni, fare clic sul numero dell'articolo seguente per visualizzare l'articolo nella Microsoft Knowledge Base:
2692828 Build di SQL Server 2012 rilasciate dopo il rilascio di SQL Server 2012 È necessario applicare un hotfix di SQL Server 2012 a un'installazione di SQL Server 2012.
Pacchetto di aggiornamento cumulativo 3 per SQL Server 2008 R2 SP1
La correzione di questo problema è stata rilasciata per la prima volta nel pacchetto di aggiornamento cumulativo 3. Per altre informazioni su come ottenere questo pacchetto di aggiornamento cumulativo per SQL Server 2008 R2 SP1, fare clic sul numero dell'articolo seguente per visualizzare l'articolo della Microsoft Knowledge Base:
2591748 Pacchetto di aggiornamento cumulativo 3 per SQL Server 2008 R2 SP1Nota Poiché le compilazioni sono cumulative, ogni nuova versione di aggiornamento contiene tutti gli hotfix e tutti gli aggiornamenti della sicurezza inclusi nella versione di aggiornamento precedente di SQL Server 2008 R2 SP1. Ti consigliamo di considerare l'applicazione della versione di aggiornamento più recente che contiene questo hotfix. Per ulteriori informazioni, fare clic sul numero dell'articolo seguente per visualizzare l'articolo nella Microsoft Knowledge Base:
2567616 Build di SQL Server 2008 R2 rilasciate dopo il rilascio di SQL Server 2008 R2 SP1
Soluzione alternativa
Per risolvere il problema, usare la clausola non empty anziché la funzione NonEmpty e rimuovere le diverse granularità o altri tipi di set di forme arbitrari nella clausola where .
Stato
Microsoft ha confermato che questo problema si verifica nei prodotti elencati nella sezione "Si applica a".