KB2689903 — POPRAWKA: brak zbieżności występuje w przypadku uruchomienia publikacji replikacji scalającej z synchronizacją w sieci Web, jeśli wartość kolumny w SQL Server 2008 R2 lub SQL Server 2012 wynosi NULL

Dotyczy
SQL Server 2008 R2 Enterprise SQL Server 2008 R2 Datacenter SQL Server 2008 R2 Developer SQL Server 2008 R2 Standard SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard

Firma Microsoft dystrybuuje poprawki dla programu Microsoft SQL Server 2008 R2 lub Microsoft SQL Server 2012 jako jeden plik do pobrania. Ponieważ poprawki są zbiorcze, każda nowa wersja zawiera wszystkie poprawki i poprawki zabezpieczeń zawarte w poprzedniej poprawce dla programu SQL Server 2008 R2 lub w wersji programu SQL Server 2012.

Objawy

Rozważmy następujący scenariusz:

  • Można skonfigurować publikację replikacji scalającej z zastosowaniem synchronizacji w sieci Web w wystąpieniu programu Microsoft SQL Server 2008 R2 lub w wystąpieniu programu Microsoft SQL Server 2012.

  • Artykuł w publikacji zawiera tabelę zawierającą kolumnę obliczeniową.

  • Instrukcja update służy do aktualizowania wartości kolumny do wartości NULL dla subskrybenta. Instrukcja update aktualizuje również wiele wierszy tabeli.

    Uwaga: kolumna, której wartość zostanie zaktualizowana do wartości NULL, znajduje się po prawej stronie kolumny obliczeniowej.

  • Replikacja scalania jest uruchamiana.

W tym scenariuszu występuje brak zbieżności, w którym zaktualizowane dane subskrybenta nie są synchronizowane z wydawcą.

Rozwiązanie

Informacje o aktualizacji zbiorczej

SQL Server 2008 R2 z dodatkiem Service Pack 2

Poprawkę rozwiązującą ten problem opublikowano po raz pierwszy w aktualizacji zbiorczej 1 dla programu SQL Server 2008 R2 z dodatkiem Service Pack 2. Aby uzyskać więcej informacji dotyczących sposobu uzyskiwania tego pakietu aktualizacji zbiorczej, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:

2720425 Pakiet aktualizacji zbiorczej 1 dla dodatku Service Pack 2 SQL Server 2008 R2Uwaga Ponieważ te kompilacje mają charakter zbiorczy, każda nowa poprawka zawiera wszystkie poprawki i poprawki zabezpieczeń z poprzednich wersji 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

SQL Server 2012

Poprawka rozwiązująca ten problem została po raz pierwszy opublikowana w aktualizacji zbiorczej 2 dla programu SQL Server 2012. Aby uzyskać więcej informacji dotyczących tego pakietu aktualizacji skumulowanych, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:

2703275 Pakiet aktualizacji zbiorczej 2 dla SQL Server 2012Uwaga Ponieważ kompilacje są zbiorcze, każda nowa wersja poprawki zawiera wszystkie poprawki i poprawki zabezpieczeń, które zostały uwzględnione w poprzedniej wersji poprawki SQL Server 2012. Firma Microsoft zaleca 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:

2692828 Kompilacje SQL Server 2012 wydane po wydaniu SQL Server 2012 Poprawkę SQL Server 2012 należy zastosować do instalacji programu SQL Server 2012.

SQL Server 2008 R2 z dodatkiem Service Pack 1

Poprawka rozwiązująca ten problem została po raz pierwszy opublikowana w aktualizacji zbiorczej 6. Aby uzyskać więcej informacji dotyczących sposobu uzyskania tego pakietu aktualizacji zbiorczej dla dodatku Service Pack 1 dla programu SQL Server 2008 R2, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:

2679367 Pakiet aktualizacji zbiorczej nr 6 dla dodatku Service Pack 1 dla systemu SQL Server 2008 R2Uwaga Ponieważ te kompilacje są zbiorcze, każda nowa wersja poprawki zawiera wszystkie poprawki i poprawki zabezpieczeń zawarte w poprzedniej wersji poprawki dla SQL Server 2008 R2 z dodatkiem Service Pack 1. 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:

2567616 Kompilacje SQL Server 2008 R2 wydane po wydaniu dodatku Service Pack 1 SQL Server 2008 R2

Obejście

Aby obejść ten problem, przenieś kolumnę obliczeniową na koniec tabeli w artykule.

Stan

Firma Microsoft potwierdziła, że jest to problem dotyczący produktów firmy Microsoft wymienionych w sekcji „Dotyczy”.