W tym artykule opisano ulepszenie, które umożliwia usunięcie tabeli zawartej jako artykuł w publikacji replikacji transakcyjnej z bazy danych i publikacji. Tabelę można usunąć tylko wtedy, gdy właściwość allow_drop ma wartość PRAWDA we wszystkich publikacjach, które zawierają te tabele jako artykuły. Jeśli ta właściwość jest ustawiona na FALSE dla dowolnej z publikacji zawierających ten artykuł, operacja DROP TABLE zakończy się niepowodzeniem i zostanie zgłoszone, że nie można usunąć zreplikowanych artykułów.
Jeśli w publikacjach jest obsługiwana funkcja DROP TABLE DDL, operacja DROP TABLE spowoduje usunięcie tabeli z publikacji i bazy danych. Agent czytnika dzienników opublikuje polecenie czyszczenia dla dystrybucyjnej bazy danych usuniętej tabeli i przeprowadzi czyszczenie metadanych wydawcy. Jeśli czytnik dziennika nie przetworzył wszystkich rekordów dziennika, które odwołują się do usuniętej tabeli, zignoruje nowe polecenia skojarzone z usuniętą tabelą. Już przetworzone rekordy zostaną dostarczone do bazy dystrybucyjnej. Mogą one zostać zastosowane w bazie danych subskrybentów, jeśli agent dystrybucji przetworzy je, zanim program Log Reader usunie przestarzałe (usunięte) artykuły.
Polecenie włączające obsługę rozwijanej tabeli dla publikacji:exec sp_changepublication @publication = '<Nazwa publikacji>', @property = 'allow_drop', @value = 'true' Polecenie włączające obsługę rozwijanej tabeli podczas tworzenia publikacji:
exec sp_addpublication @publication = '<Nazwa publikacji>', ..., @allow\_drop = N'true' Domyślna wartość właściwości allow_drop jest ustawiona na False.
Rozwiązanie
Ten problem został rozwiązany w następujących aktualizacjach zbiorczych dla programu SQL Server:
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:
Najnowsza aktualizacja zbiorcza dla programu SQL Server 2016
Informacje o dodatku Service PackTa funkcja została po raz pierwszy wprowadzona w następujących dodatkach Service Pack dla programu SQL Server:
Informacje o dodatkach Service Pack dla programu SQL Server
Dodatki Service Pack są kumulatywne. Każdy nowy dodatek Service Pack zawiera wszystkie poprawki zawarte w poprzednich dodatkach Service Pack oraz nowe poprawki. Zalecamy stosowanie najnowszego dodatku Service Pack i najnowszej aktualizacji zbiorczej dla danego dodatku Service Pack. Instalowanie poprzedniego dodatku Service Pack przed zainstalowaniem najnowszego dodatku Service Pack nie jest konieczne. Więcej informacji na temat najnowszego dodatku Service Pack i najnowszej aktualizacji zbiorczej znajdziesz w tabeli 1 w następującym artykule.
Jak określić wersję, wersję i poziom aktualizacji programu SQL Server i jego składników