sp_droparticle (Transact-SQL)

Elimina un articolo da una pubblicazione snapshot o transazionale. Non è possibile rimuovere un articolo se esistono una o più sottoscrizioni per tale articolo. Questa stored procedure viene eseguita nel database di pubblicazione del server di pubblicazione.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

sp_droparticle [ @publication= ] 'publication'
        , [ @article= ] 'article'
    [ , [ @ignore_distributor = ] ignore_distributor ]
    [ , [ @force_invalidate_snapshot= ] force_invalidate_snapshot ]
    [ , [ @publisher = ] 'publisher' ]
    [ , [ @from_drop_publication = ] from_drop_publication ]

Argomenti

  • [ @publication=] 'publication'
    Nome della pubblicazione che contiene l'articolo da eliminare. publication è di tipo sysname e non prevede alcun valore predefinito.

  • [ @article=] 'article'
    Nome dell'articolo da eliminare. article è di tipo sysname e non prevede alcun valore predefinito.

  • [ @ignore_distributor =] ignore_distributor
    Identificato solo a scopo informativo. Non supportato. Non è garantita la compatibilità con le versioni future.

  • [ @force_invalidate_snapshot = ] force_invalidate_snapshot
    Segnala che l'azione eseguita da questa stored procedure potrebbe invalidare uno snapshot esistente. force_invalidate_snapshot è di tipo bit e il valore predefinito è 0.

    0 specifica che le modifiche apportate all'articolo non invalideranno lo snapshot. Se la stored procedure rileva che la modifica richiede un nuovo snapshot, viene generato un errore e non viene apportata alcuna modifica.

    1 specifica che le modifiche apportate all'articolo potrebbero invalidare lo snapshot e, se sono disponibili sottoscrizioni che richiedono un nuovo snapshot, consente di contrassegnare lo snapshot esistente come obsoleto e di generarne uno nuovo.

  • [ @publisher= ] 'publisher'
    Specifica un server di pubblicazione non Microsoft SQL Server. publisher è di tipo sysname e il valore predefinito è NULL.

    Nota

    Non utilizzare publisher per la modifica delle proprietà di un articolo in un server di pubblicazione SQL Server.

  • [ @from_drop_publication= ] from_drop_publication
    Identificato solo a scopo informativo. Non supportato. Non è garantita la compatibilità con le versioni future.

Valori restituiti

0 (esito positivo) o 1 (esito negativo)

Osservazioni

La stored procedure sp_droparticle viene utilizzata per la replica snapshot e transazionale.

Per gli articoli con filtro orizzontale, la stored procedure sp_droparticle controlla la colonna type dell'articolo nella tabella sysarticles (Transact-SQL) per determinare se è necessario eliminare anche una vista o un filtro. Se sono disponibili viste o filtri generati in modo automatico, questi vengono eliminati insieme all'articolo. Le viste e i filtri creati in modo manuale non vengono eliminati.

L'esecuzione di sp_droparticle per eliminare un articolo da una pubblicazione non comporta la rimozione dell'oggetto dal database di pubblicazione o dell'oggetto corrispondente dal database di sottoscrizione. Utilizzare DROP <object> per rimuovere manualmente questi oggetti, se necessario.

Esempio

DECLARE @publication AS sysname;
DECLARE @article AS sysname;
SET @publication = N'AdvWorksProductTran'; 
SET @article = N'Product'; 

-- Drop the transactional article.
USE [AdventureWorks2008R2]
EXEC sp_droparticle 
  @publication = @publication, 
  @article = @article,
  @force_invalidate_snapshot = 1;
GO

Autorizzazioni

Solo i membri del ruolo predefinito del server sysadmin o del ruolo predefinito del database db_owner possono eseguire sp_droparticle.