sp_dropdistributiondb (Transact-SQL)

Supprime une base de données de distribution. Supprime les fichiers physiques utilisés par la base de données s'ils ne sont pas utilisés par une autre base de données. Cette procédure stockée est exécutée sur n'importe quelle base de données du serveur de distribution.

Icône Lien de rubriqueConventions de la syntaxe de Transact-SQL

Syntaxe

sp_dropdistributiondb [ @database= ] 'database'

Arguments

  • [ @database=] 'database'
    Base de données à supprimer. database est de type sysname, sans valeur par défaut.

Valeurs des codes de retour

0 (succès) ou 1 (échec)

Notes

La procédure stockée sp_dropdistributiondb est utilisée dans tous les types de réplication.

Elle doit être exécutée avant la suppression du serveur de distribution à l'aide de sp_dropdistributor.

sp_dropdistributiondb permet de supprimer également un travail de l'Agent de lecture de la file d'attente relatif à la base de données de distribution, s'il existe.

Pour désactiver la distribution, la base de données remplissant cette fonction doit se trouver en ligne. Également, si une capture instantanée existe pour la base de données de distribution, elle doit être supprimée avant la désactivation de la distribution. Une capture instantanée de base de données revient en effet à une copie hors connexion et en lecture seule de la base de données et ne correspond à aucune capture instantanée de réplication. Pour plus d'informations, consultez Captures instantanées de base de données.

Autorisations

Seuls les membres du rôle de serveur fixe sysadmin peuvent exécuter sp_dropdistributiondb.

Exemple

-- 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'AdventureWorks';

-- Disable the publication database.
USE [AdventureWorks]
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

Voir aussi

Référence

sp_adddistributiondb (Transact-SQL)
sp_changedistributiondb (Transact-SQL)
sp_helpdistributiondb (Transact-SQL)
Procédures stockées de réplication (Transact-SQL)

Autres ressources

How to: Disable Publishing and Distribution (Replication Transact-SQL Programming)

Aide et Informations

Assistance sur SQL Server 2005