Symptomy
Rozpatrzmy następujący scenariusz:
-
Funkcja replikacji jest używana w programie Microsoft SQL Server 2012 lub SQL Server 2014.
-
W subskrypcji replikacji Dodaj abonament, a następnie usuń go.
W tym scenariuszu może zostać wyświetlony następujący błąd 515:
Nie można wstawić wartości NULL do kolumny "article_id", tabeli "<DistributionDatabaseName> .dbo.MSrepl_commands"; w kolumnie nie są dozwolone wartości null. Wstawianie nie powiodło się.
Przyczyna
Przyczyną występowania tego problemu jest regresja programu SQL Server 2012. Po dodaniu subskrypcji, a następnie jej usunięciu metadane replikacji dotyczące subskrypcji są natychmiast usuwane, ponieważ nastąpiła opóźnienie, zanim LogReader polecenie dodania subskrypcji.
Rozwiązanie
Ten problem został po raz pierwszy rozwiązany w poniższej zbiorczej aktualizacji programu SQL Server.
Zbiorcza aktualizacja 1 dla programu SQL Server 2012 z dodatkiem SP2 /en-us/help/2976982
Zbiorcza aktualizacja 2 dla programu SQL Server 2014 /en-us/help/2967546
Zbiorcza aktualizacja 10 dla programu SQL Server 2012 z dodatkiem SP1 /en-us/help/2954099
Każda nowa Zbiorcza aktualizacja programu SQL Server zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń uwzględnione w poprzedniej aktualizacji zbiorczej. Zapoznaj się z najnowszymi aktualizacjami zbiorczymi dla programu SQL Server:
Stan
Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji "dotyczy".