Firma Microsoft rozpowszechnia program Microsoft SQL Server 2008 z dodatkiem SP2, Microsoft SQL Server 2008 R2 lub Microsoft SQL Server 2012 w postaci jednego pliku do pobrania. Ponieważ poprawki są kumulatywne, każda nowa wersja zawiera wszystkie poprawki i wszystkie aktualizacje zabezpieczeń, które zostały uwzględnione w poprzedniej wersji programu SQL Server 2008 z dodatkiem SP2, SQL Server 2008 R2 lub SQL Server 2012.
Symptomy
Rozpatrzmy następujący scenariusz:
-
Za pomocą operacji scalania publikacji można zreplikować dane XML w programie Microsoft SQL Server 2005 w programie Microsoft SQL Server 2008 w programie Microsoft SQL Server 2008 R2 lub Microsoft SQL Server 2012.
-
W tej samej partii replikacji scalającej występuje błąd naruszenia klucza obcego.
W tym scenariuszu nie można znaleźć replikacji scalającej, a dane XML są częściowo replikowane lub tracone. Ponadto w dzienniku błędów programu SQL Server jest rejestrowany komunikat o błędzie podobny do następującego:
Proces scalania nie mógł zreplikować co najmniej jednej instrukcji INSERT do wydawcy. Wykonanie procedury składowanej nie powiodło się.
Przyczyna
Ten problem występuje, ponieważ replikacja scalająca pozostaje w stanie błędu i nie może obsługiwać strumienia sekwencyjnego danych XML, gdy wystąpi błąd naruszenia klucza obcego.
Rozwiązanie
Informacje o aktualizacji zbiorczej
Program SQL Server 2012
Poprawka dotycząca tego problemu została wydana po raz pierwszy w aktualizacji zbiorczej 1 dla programu SQL Server 2012. Aby uzyskać więcej informacji na temat tego zbiorczego pakietu aktualizacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
2679368 Pakiet aktualizacji zbiorczej 1 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. Firma Microsoft zaleca 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 Musisz zastosować poprawkę SQL Server 2012 do instalacji programu SQL Server 2012.
SQL Server 2008 z dodatkiem Service Pack 3
Poprawka dotycząca tego problemu została wydana po raz pierwszy w aktualizacji zbiorczej 1 dla programu SQL Server 2008 z dodatkiem Service Pack 3. Aby uzyskać więcej informacji na temat tego zbiorczego pakietu aktualizacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
2617146 Pakiet aktualizacji zbiorczej 1 dla programu SQL Server 2008 z dodatkiem Service Pack 3Uwaga 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 2008. Firma Microsoft zaleca 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:
2629969 Kompilacje programu SQL Server 2008 wydane po opublikowaniu dodatku Service Pack 3 dla programu SQL Server 2008 Poprawki programu Microsoft SQL Server 2008 są tworzone dla określonych pakietów Service Pack programu SQL Server. Musisz zastosować poprawkę dodatku Service Pack 3 dla programu SQL Server 2008 do instalacji dodatku Service Pack 3 dla programu SQL Server 2008. Wszystkie poprawki podane w dodatku Service Pack programu SQL Server są domyślnie zawarte w następnym dodatku Service Pack dla programu SQL Server.
SQL Server 2008 R2
Poprawka dotycząca tego problemu została wydana po raz pierwszy w aktualizacji zbiorczej 10. Aby uzyskać więcej informacji na temat sposobu uzyskiwania tego zbiorczego pakietu aktualizacji dla programu SQL Server 2008 R2, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
2591746 Pakiet aktualizacji zbiorczej 10 dla programu SQL Server 2008 R2 Uwaga Ponieważ kompilacja jest zbiorcza, każdy nowy pakiet poprawek zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń dołączone do poprzedniej wersji poprawki SQL Server 2008 R2. 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:
981356 Kompilacje programu SQL Server 2008 R2, które zostały wydane po opublikowaniu programu SQL Server 2008 R2
SQL Server 2008 R2 z dodatkiem Service Pack 1
Poprawka dotycząca tego problemu została wydana po raz pierwszy w aktualizacji zbiorczej 3 dla programu SQL Server 2008 R2 z dodatkiem Service Pack 1. Aby uzyskać więcej informacji na temat sposobu uzyskiwania tego zbiorczego pakietu aktualizacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
2591748 Pakiet aktualizacji zbiorczej 3 dla programu SQL Server 2008 R2 z dodatkiem Service Pack 1Uwaga Ponieważ kompilacja jest zbiorcza, każdy nowy pakiet poprawek zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń dołączone do poprzedniej wersji poprawki SQL Server 2008 R2. 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:
2567616 Kompilacje programu SQL Server 2008 R2, które zostały wydane po opublikowaniu dodatku Service Pack 1 dla programu SQL Server 2008 R2
SQL Server 2008 z dodatkiem Service Pack 2 (SP2) pakiet aktualizacji zbiorczej 6
Poprawka dotycząca tego problemu została po raz pierwszy wydana w pakiecie aktualizacji zbiorczej 6. Aby uzyskać więcej informacji na temat sposobu uzyskiwania tego pakietu aktualizacji zbiorczej dla programu SQL Server 2008 z dodatkiem SP2, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
2582285 Pakiet aktualizacji zbiorczej 6 dla programu SQL Server 2008 z dodatkiem Service Pack 2Uwaga Ponieważ kompilacja jest zbiorcza, każda nowa wersja aktualizacji zawiera wszystkie poprawki i wszystkie aktualizacje zabezpieczeń, które zostały dołączone do poprzedniej wersji aktualizacji programu SQL Server 2008 z dodatkiem SP2. Zalecamy zastosowanie najnowszego wydania aktualizacji, który zawiera 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:
2402659 Kompilacje programu SQL Server 2008 wydane po opublikowaniu dodatku Service Pack 2 dla programu SQL Server 2008
Stan
Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji "dotyczy".