sp_dropdistpublisher (Transact-SQL)sp_dropdistpublisher (Transact-SQL)

S’APPLIQUE À : ouiSQL Server ouiAzure SQL Database (Managed Instance uniquement) nonAzure SQL Data Warehouse nonParallel Data Warehouse APPLIES TO: yesSQL Server yesAzure SQL Database (Managed Instance only) noAzure SQL Data Warehouse noParallel Data Warehouse

Supprime un serveur de publication de distribution.Drops a distribution Publisher. Cette procédure stockée est exécutée sur n’importe quelle base de données du serveur de distribution.This stored procedure is executed at the Distributor on any database.

Icône de lien de rubrique Conventions de la syntaxe Transact-SQLTopic link icon Transact-SQL Syntax Conventions

SyntaxeSyntax

  
sp_dropdistpublisher [ @publisher = ] 'publisher'  
    [ , [ @no_checks = ] no_checks ]  
    [ , [ @ignore_distributor = ] ignore_distributor ]  

ArgumentsArguments

[ @publisher = ] 'publisher' est le serveur de publication à supprimer.[ @publisher = ] 'publisher' Is the Publisher to drop. Publisher est de type sysname, sans valeur par défaut.publisher is sysname, with no default.

[ @no_checks = ] no_checks spécifie si sp_dropdistpublisher vérifie que le serveur de publication a désinstallé le serveur en tant que serveur de distribution.[ @no_checks = ] no_checks Specifies whether sp_dropdistpublisher checks that the Publisher has uninstalled the server as the Distributor. no_checks est de valeur de bit, avec 0comme valeur par défaut.no_checks is bit, with a default of 0.

Si la valeur est 0, la réplication vérifie que le serveur de publication distant a désinstallé le serveur local en tant que serveur de distribution.If 0, replication verifies that the remote Publisher has uninstalled the local server as the Distributor. Si le serveur de publication est local, la réplication vérifie qu'il ne reste aucun objet de publication ou de distribution sur le serveur local.If the Publisher is local, replication verifies that there are no publication or distribution objects remaining on the local server.

Si la condition est égale à 1, tous les objets de réplication associés au serveur de publication de distribution sont supprimés même si un serveur de publication distant est inaccessible.If 1, all the replication objects associated with the distribution Publisher are dropped even if a remote Publisher cannot be reached. Après cela, le serveur de publication distant doit désinstaller la réplication à l’aide de sp_dropdistributor avec @ignore_distributor = 1.After doing this, the remote Publisher must uninstall replication using sp_dropdistributor with @ignore_distributor = 1.

[ @ignore_distributor = ] ignore_distributor spécifie si les objets de distribution sont conservés sur le serveur de distribution lorsque le serveur de publication est supprimé.[ @ignore_distributor = ] ignore_distributor Specifies whether distribution objects are left at the Distributor when the Publisher is removed. ignore_distributor est de bits et peut prendre l’une des valeurs suivantes :ignore_distributor is bit and can be one of these values:

1 = les objets de distribution appartenant au serveur de publication sont conservés sur le serveur de distribution.1 = distribution objects belonging to the publisher remain at the Distributor.

0 = les objets de distribution du serveur de publication sont nettoyés sur le serveur de distribution.0 = distribution objects for the publisher are cleaned-up at the Distributor.

Valeurs des codes de retourReturn Code Values

0 (succès) ou 1 (échec)0 (success) or 1 (failure)

NotesRemarks

sp_dropdistpublisher est utilisé dans tous les types de réplications.sp_dropdistpublisher is used in all types of replication.

Lors de la suppression d’un serveur de publication Oracle, si vous ne parvenez pas à supprimer le serveur de publication sp_dropdistpublisher retourne une erreur et les objets de serveur de distribution du serveur de publication sont supprimés.When dropping an Oracle Publisher, if unable to drop the Publisher sp_dropdistpublisher returns an error and the Distributor objects for the Publisher are removed.

ExempleExample

-- This script uses sqlcmd scripting variables. They are in the form
-- $(MyVariable). For information about how to use scripting variables  
-- on the command line and in SQL Server Management Studio, see the 
-- "Executing Replication Scripts" section in the topic
-- "Programming Replication Using System Stored Procedures".

-- Disable publishing and distribution.
DECLARE @distributionDB AS sysname;
DECLARE @publisher AS sysname;
DECLARE @publicationDB as sysname;
SET @distributionDB = N'distribution';
SET @publisher = $(DistPubServer);
SET @publicationDB = N'AdventureWorks2012';

-- Disable the publication database.
USE [AdventureWorks2012]
EXEC sp_removedbreplication @publicationDB;

-- Remove the registration of the local Publisher at the Distributor.
USE master
EXEC sp_dropdistpublisher @publisher;

-- Delete the distribution database.
EXEC sp_dropdistributiondb @distributionDB;

-- Remove the local server as a Distributor.
EXEC sp_dropdistributor;
GO

AutorisationsPermissions

Seuls les membres du rôle serveur fixe sysadmin peuvent exécuter sp_dropdistpublisher.Only members of the sysadmin fixed server role can execute sp_dropdistpublisher.

Voir aussiSee Also

Désactiver la publication et la distribution Disable Publishing and Distribution
sp_adddistpublisher (Transact-SQL) sp_adddistpublisher (Transact-SQL)
sp_changedistpublisher (Transact-SQL) sp_changedistpublisher (Transact-SQL)
sp_helpdistpublisher (Transact-SQL) sp_helpdistpublisher (Transact-SQL)
Procédures stockées de réplication (Transact-SQL)Replication Stored Procedures (Transact-SQL)