Objawy
Rozważmy następujący scenariusz:
- Masz bazę danych usług Microsoft SQL Server 2012 Analysis Services (SSAS 2012) lub Microsoft SQL Server 2008 R2 Analysis Services (SSAS 2008 R2) zawierającą wiele źródeł danych.
- Zostało otwarte zapytanie MDX (Multidimensional Expressions), które zawiera kilka filtrów.
- Zapytanie MDX jest uruchamiane na partycji relacyjnej instalacji OLAP (ROLAP). Partycja ROLAP i wymiar, do którego odwołują się filtry, pochodzą z różnych źródeł danych
W takim przypadku może zostać zwrócony niepoprawny wynik lub może nastąpić naruszenie zasad dostępu.
Przyczyna
Ten problem występuje, ponieważ pomocnicze źródło danych uniemożliwia usługom SSAS wypychanie filtrów do zapytania SQL. Ponieważ jest to nieoczekiwane zachowanie, usługi SSAS generują niespójne wewnętrzne struktury danych, które prowadzą do naruszenia zasad dostępu lub nieprawidłowych wyników.
Rozwiązanie
Informacje o aktualizacji zbiorczej
Ten problem został po raz pierwszy rozwiązany w następującej aktualizacji zbiorczej programu SQL Server.
Aktualizacja skumulowana 10 dla systemu SQL Server 2012 /pl-pl/pomoc/2891666
Informacje o aktualizacjach zbiorczych dla programu SQL Server
Każda nowa aktualizacja zbiorcza programu SQL Server zawiera wszystkie poprawki zabezpieczeń uwzględnione w poprzedniej aktualizacji skumulowanej. Sprawdź najnowsze aktualizacje zbiorcze dla programu SQL Server:
Aktualizacja zbiorcza 8 dla programu SQL Server 2008 R2 z dodatkiem Service Pack 2Poprawka rozwiązująca ten problem została po raz pierwszy opublikowana w aktualizacji zbiorczej 8. Aby uzyskać więcej informacji dotyczących sposobu uzyskiwania tego pakietu aktualizacji zbiorczej dla programu SQL Server 2008 R2 z dodatkiem Service Pack 2, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:
2871401 Pakiet aktualizacji zbiorczej 8 dla dodatku Service Pack 2 2008 R2Uwaga Ponieważ te kompilacje są zbiorcze, każda nowa poprawka zawiera wszystkie poprawki i poprawki zabezpieczeń zawarte w poprzedniej wersji poprawki dodatku Service Pack 2 SQL Server 2008 R2. Zalecamy rozważenie zastosowania najnowszej wersji poprawki zawierającej tę poprawkę. Aby uzyskać więcej informacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:
2730301 Kompilacje SQL Server 2008 R2 wydane po wydaniu dodatku Service Pack 2 SQL Server 2008 R2
Aktualizacja zbiorcza 4 dla programu SQL Server 2012 z dodatkiem Service Pack 1Poprawka rozwiązująca ten problem została po raz pierwszy opublikowana w aktualizacji zbiorczej 4. Aby uzyskać więcej informacji dotyczących sposobu uzyskiwania tego pakietu aktualizacji zbiorczej dla dodatku Service Pack 1 dla programu SQL Server 2012, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:
2833645 Pakiet aktualizacji zbiorczej 4 dla dodatku Service Pack 1 dla SQL Server 2012 Uwaga Ponieważ te kompilacje są zbiorcze, każda nowa poprawka zawiera wszystkie poprawki i poprawki zabezpieczeń z poprzednich wersji dodatku Service Pack 1 dla SQL Server 2012. Zalecamy rozważenie zastosowania najnowszej wersji poprawki zawierającej tę poprawkę. Aby uzyskać więcej informacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:
2772858 Kompilacje SQL Server 2012 wydane po wydaniu dodatku Service Pack 1 SQL Server 2012
Stan
Firma Microsoft potwierdziła, że jest to problem dotyczący produktów firmy Microsoft wymienionych w sekcji „Dotyczy”.
Więcej informacji
Ten problem został częściowo rozwiązany w poprzedniej aktualizacji. Jednak poprawka opisana w tym artykule z bazy wiedzy Knowledge Base została ukończona. Aby uzyskać oryginalną poprawkę, możesz zapoznać się z następującym artykułem:
2770635 POPRAWKA: Nieprawidłowy wynik podczas uruchamiania zapytania MDX w bazie danych usług SSAS 2008 R2 lub SSAS 2012 zawierającej wiele źródeł danych