Firma Microsoft rozpowszechnia poprawki w programie Microsoft SQL Server 2012 w postaci jednego pliku do pobrania. Ponieważ poprawki są kumulatywne, każdy nowy pakiet zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń, które zostały dołączone do poprzedniej wersji poprawki SQL Server 2012.
Symptomy
Rozpatrzmy następujący scenariusz:
-
Zainstalowano program Microsoft SQL Server 2012 PowerPivot dla programu Microsoft Excel 2010 lub usług Analysis Services programu SQL Server 2012. Do instalacji jest używany tryb wdrażania tabelarycznego.
-
W modelu istnieje tabela zawierająca wiele kolumn podstawowych i kolumn obliczeniowych. W jednej z kolumn obliczeniowych jest używana funkcja powiązane z analizami danych funkcji (DAX).
-
Wykonywanie operacji ProcessFull w tabeli.
W tym scenariuszu kolumna obliczeniowa używająca funkcji POWIĄZANEj może zawierać puste wartości. Ponadto program SQL Server 2012 ulega awarii sporadycznie. Ten problem występuje, jeśli są spełnione następujące warunki:
-
Tabela zawiera więcej niż jeden związek wychodzący.
-
Co najmniej dwie relacje mają tę samą kolumnę klucza obcego.
-
Kolumna klucza podstawowego każdej relacji ma taką samą nazwę.
UwagaTen problem występuje nie tylko wtedy, gdy w kolumnie obliczeniowej znajduje się powiązana funkcja. Podobny problem może wystąpić, jeśli istnieje obiekt, który ma zależność od jednej z relacji.
Przyczyna
Ten problem występuje, ponieważ relacja, która ma zależność od kolumny obliczeniowej, została wybrana arbitralnie. Dlatego kolumna obliczeniowa zależna od relacji jest przetwarzana przed przetworzeniem relacji.
Rozwiązanie
Informacje o aktualizacji zbiorczej
Program SQL Server 2012
Poprawka dotycząca tego problemu została wydana po raz pierwszy w aktualizacji zbiorczej 2. Aby uzyskać więcej informacji na temat uzyskiwania tego pakietu aktualizacji zbiorczej dla programu SQL Server 2012, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
2703275 Pakiet aktualizacji zbiorczej 2 dla programu SQL Server 2012Uwaga Ponieważ kompilacja jest zbiorcza, każdy nowy pakiet poprawek zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń, które zostały dołączone do poprzedniej wersji poprawki SQL Server 2012. Zalecamy zastosowanie najnowszego wydania poprawki zawierającego tę poprawkę. Aby uzyskać więcej informacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
2692828 Kompilacje programu SQL Server 2012 wydane po wydaniu programu SQL Server 2012
Stan
Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji "dotyczy".
Obejście
Aby obejść ten problem, nie należy używać tej samej nazwy kolumny klucza podstawowego dla każdej relacji.