KB3170123 – Podporuje DROP TABLE DDL pro články, které jsou součástí transakční replikace v SQL Server 2014 nebo v SQL Server 2016 SP1

Platí pro
SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Express - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2014 Web - duplicate (do not use) SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use)

Tento článek popisuje vylepšení, které umožňuje vyřadit z databáze a publikací tabulku, která je součástí článku v publikaci transakční replikace. Tabulku můžete odstranit jenom v případě, že je vlastnost allow_drop nastavená na hodnotu TRUE u všech publikací, ve kterých jsou tabulkou (tabulkami) jako článek. Pokud je vlastnost nastavená u některé z publikací, které obsahují daný článek, na hodnotu NEPRAVDA, operace DROP TABLE selže a zobrazí hlášení, že replikované články nejde vyřadit.

Pokud publikace podporují DROP TABLE DDL, operace DROP TABLE odstraní tabulku z publikace a databáze. Agent čtečky protokolů odešle příkaz k vyčištění distribuční databáze vynechané tabulky a vyčistí metadata vydavatele. Pokud čtečka protokolů nezpracovala všechny záznamy protokolu, které odkazují na odstraněnou tabulku, bude ignorovat nové příkazy přidružené k odstraněné tabulce. Již zpracované záznamy budou doručeny do distribuční databáze. Mohou být použity v databázi předplatitelů, pokud je distribuční agent zpracuje dříve, než Log Reader vyčistí zastaralé (vyřazené) články.

Command to enable drop table support for a publication:exec sp_changepublication @publication = '<Publication Name>', @property = 'allow_drop', @value = 'true' Command to enable drop table support while you're creating a publication:

exec sp_addpublication @publication = '<Název publikace>', ..., @allow\_drop = N'true' Výchozí hodnota vlastnosti allow_drop je nastavená na False.

Řešení

Tento problém byl opraven v následujících kumulativních aktualizacích pro SQL Server:

Informace o kumulativních aktualizacích pro SQL Server

Každá nová kumulativní aktualizace pro SQL Server obsahuje všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozí kumulativní aktualizace. Podívejte se na nejnovější kumulativní aktualizace pro SQL Server:

Nejnovější kumulativní aktualizace pro SQL Server 2016
        
      

Informace o aktualizacích Service PackTato funkce byla poprvé představena v následujících aktualizacích Service Pack pro SQL Server:

Informace o aktualizacích Service Pack pro SQL Server

Aktualizace Service Pack jsou kumulativní. Každá nová aktualizace Service Pack obsahuje všechny opravy z předchozích aktualizací Service Pack společně s novými opravami. Doporučujeme použít nejnovější aktualizaci Service Pack a nejnovější kumulativní aktualizaci pro tuto aktualizaci Service Pack. Před instalací nejnovější aktualizace Service Pack není nutné instalovat předchozí aktualizaci Service Pack. Další informace o nejnovější aktualizaci Service Pack a nejnovější kumulativní aktualizaci najdete v tabulce 1 v následujícím článku.

Jak zjistit verzi, edici a úroveň aktualizace systému SQL Server a jeho součástí