sp_dropdistributiondb (Transact-SQL)
Elimina un database di distribuzione. Rimuove i file fisici utilizzati dal database se non sono utilizzati da un altro database. Questa stored procedure viene eseguita in qualsiasi database del server di distribuzione.
Sintassi
sp_dropdistributiondb [ @database= ] 'database'
Argomenti
- [ @database=] 'database'
Database da eliminare. database è di tipo sysname e non prevede alcun valore predefinito.
Valori restituiti
0 (esito positivo) o 1 (esito negativo)
Osservazioni
sp_dropdistributiondb viene utilizzata per tutti i tipi di replica.
Questa stored procedure deve essere eseguita prima di eliminare il server di distribuzione tramite sp_dropdistributor.
sp_dropdistributiondb rimuove inoltre i processi dell'agente di lettura coda per il database di distribuzione eventualmente esistenti.
Per disattivare la distribuzione, è necessario che il database di distribuzione sia in linea. Se esiste uno snapshot per il database di distribuzione, deve essere eliminato prima della disattivazione della distribuzione. Uno snapshot del database è una copia non in linea e di sola lettura di un database e non è correlato a uno snapshot di replica. Per ulteriori informazioni, vedere Snapshot del database.
Esempio
-- 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
Autorizzazioni
Solo i membri del ruolo predefinito del server sysadmin possono eseguire sp_dropdistributiondb.
Vedere anche