sp_dropmergearticle (Transact-SQL)sp_dropmergearticle (Transact-SQL)

Anwendungsbereich:Applies to: JaSQL ServerSQL Server (alle unterstützten Versionen) yesSQL ServerSQL Server (all supported versions) Anwendungsbereich:Applies to: JaSQL ServerSQL Server (alle unterstützten Versionen) yesSQL ServerSQL Server (all supported versions)

Entfernt einen Artikel aus einer Mergeveröffentlichung.Removes an article from a merge publication. Diese gespeicherte Prozedur wird auf dem Verleger für die Veröffentlichungs Datenbank ausgeführt.This stored procedure is executed at the Publisher on the publication database.

Symbol für Themenlink Transact-SQL-SyntaxkonventionenTopic link icon Transact-SQL Syntax Conventions

SyntaxSyntax

  
sp_dropmergearticle [ @publication= ] 'publication'  
        , [ @article= ] 'article'   
    [ , [ @ignore_distributor= ] ignore_distributor   
    [ , [ @reserved= ] reserved   
    [ , [ @force_invalidate_snapshot= ] force_invalidate_snapshot ]  
    [ , [ @force_reinit_subscription = ] force_reinit_subscription ]  
    [ , [ @ignore_merge_metadata = ] ignore_merge_metadata ]  

ArgumenteArguments

[ @publication = ] 'publication' Der Name der Veröffentlichung, aus der ein Artikel gelöscht werden soll.[ @publication = ] 'publication' Is the name of the publication from which to drop an article. Publicationist vom Datentyp vom Datentyp sysnameund hat keinen Standardwert.publicationis sysname, with no default.

[ @article = ] 'article' Der Name des Artikels, der aus der angegebenen Veröffentlichung gelöscht werden soll.[ @article = ] 'article' Is the name of the article to drop from the given publication. der Artikelist vom Datentyp vom Datentyp sysnameund hat keinen Standardwert.articleis sysname, with no default. Wenn alle, werden alle vorhandenen Artikel in der angegebenen Mergeveröffentlichung entfernt.If all, all existing articles in the specified merge publication are removed. Auch wenn der Artikel voll ständigist, muss die Veröffentlichung getrennt vom Artikel abgelegt werden.Even if article is all, the publication still must be dropped separately from the article.

[ @ignore_distributor = ] ignore_distributor Gibt an, ob diese gespeicherte Prozedur ausgeführt wird, ohne eine Verbindung mit dem Verteiler herzustellen.[ @ignore_distributor = ] ignore_distributor Indicates whether this stored procedure is executed without connecting to the Distributor. ignore_distributor ist vom Typ Bit. der Standardwert ist 0.ignore_distributor is bit, with a default of 0.

[ @reserved = ] reserved Ist für die zukünftige Verwendung reserviert.[ @reserved = ] reserved Is reserved for future use. reserved ist vom Datentyp nvarchar (20) und hat den Standardwert NULL.reserved is nvarchar(20), with a default of NULL.

[ @force_invalidate_snapshot = ] force_invalidate_snapshot Aktiviert oder deaktiviert die Möglichkeit, eine Momentaufnahme für ungültig zu erklären.[ @force_invalidate_snapshot = ] force_invalidate_snapshot Enables or disables the ability to have a snapshot invalidated. force_invalidate_snapshot ist ein Bitund hat den Standardwert 0.force_invalidate_snapshot is a bit, with a default 0.

der Wert 0 gibt an, dass Änderungen am Mergeartikel nicht bewirken, dass die Momentaufnahme ungültig wird.0 specifies that changes to the merge article do not cause the snapshot to be invalid.

1 bedeutet, dass Änderungen am Mergeartikel bewirken können, dass die Momentaufnahme ungültig wird. wenn dies der Fall ist, wird mit dem Wert 1 die Berechtigung zum Auftreten der neuen Momentaufnahme erteilt.1 means that changes to the merge article may cause the snapshot to be invalid, and if that is the case, a value of 1 gives permission for the new snapshot to occur.

[ @force_reinit_subscription = ] force_reinit_subscription Bestätigt, dass das Löschen des Artikels erfordert, dass vorhandene Abonnements erneut initialisiert werden.[ @force_reinit_subscription = ] force_reinit_subscription Acknowledges that dropping the article requires existing subscriptions to be reinitialized. force_reinit_subscription ist ein Bit, der Standardwert ist 0.force_reinit_subscription is a bit, with a default of 0.

der Wert 0 gibt an, dass das Löschen des Artikels nicht dazu führt, dass das Abonnement erneut initialisiert wird.0 specifies that dropping the article does not cause the subscription to be reinitialized.

1 bedeutet, dass das Löschen des Artikels dazu führt, dass vorhandene Abonnements erneut initialisiert werden, und die Berechtigung zur erneuten Initialisierung des Abonnements erteilt.1 means that dropping the article causes existing subscriptions to be reinitialized, and gives permission for the subscription reinitialization to occur.

[ @ignore_merge_metadata = ] ignore_merge_metadata Nur interne Verwendung.[ @ignore_merge_metadata = ] ignore_merge_metadata Internal use only.

RückgabecodewerteReturn Code Values

0 (Erfolg) oder 1 (Fehler)0 (success) or 1 (failure)

HinweiseRemarks

sp_dropmergearticle wird bei der Mergereplikation verwendet.sp_dropmergearticle is used in merge replication. Weitere Informationen zum Löschen von Artikeln finden Sie unter Hinzufügen und Löschen von Artikeln aus vorhandenen Veröffentlichungen.For more information about dropping articles, see Add Articles to and Drop Articles from Existing Publications.

Durch das Ausführen sp_dropmergearticle zum Löschen eines Artikels aus einer Veröffentlichung wird das Objekt nicht aus der Veröffentlichungs Datenbank oder dem entsprechenden Objekt aus der Abonnement Datenbank entfernt.Executing sp_dropmergearticle to drop an article from a publication does not remove the object from the publication database or the corresponding object from the subscription database. Verwenden Sie DROP <object>, um diese Objekte bei Bedarf manuell zu entfernen.Use DROP <object> to remove these objects manually if necessary.

BerechtigungenPermissions

Nur Mitglieder der festen Server Rolle sysadmin oder der festen Daten Bank Rolle db_owner können sp_dropmergearticleausführen.Only members of the sysadmin fixed server role or the db_owner fixed database role can execute sp_dropmergearticle.

BeispielExample

DECLARE @publication AS sysname;  
DECLARE @article1 AS sysname;  
DECLARE @article2 AS sysname;  
SET @publication = N'AdvWorksSalesOrdersMerge';  
SET @article1 = N'SalesOrderDetail';   
SET @article2 = N'SalesOrderHeader';   
  
-- Remove articles from a merge publication.  
USE [AdventureWorks]  
EXEC sp_dropmergearticle   
  @publication = @publication,   
  @article = @article1,  
  @force_invalidate_snapshot = 1;  
EXEC sp_dropmergearticle   
  @publication = @publication,   
  @article = @article2,  
  @force_invalidate_snapshot = 1;  
GO  
DECLARE @publication AS sysname;  
DECLARE @table1 AS sysname;  
DECLARE @table2 AS sysname;  
DECLARE @table3 AS sysname;  
DECLARE @salesschema AS sysname;  
DECLARE @hrschema AS sysname;  
DECLARE @filterclause AS nvarchar(1000);  
SET @publication = N'AdvWorksSalesOrdersMerge';   
SET @table1 = N'Employee';   
SET @table2 = N'SalesOrderHeader';   
SET @table3 = N'SalesOrderDetail';   
SET @salesschema = N'Sales';  
SET @hrschema = N'HumanResources';  
SET @filterclause = N'Employee.LoginID = HOST_NAME()';  
  
-- Drop the merge join filter between SalesOrderHeader and SalesOrderDetail.  
EXEC sp_dropmergefilter   
  @publication = @publication,   
  @article = @table3,   
  @filtername = N'SalesOrderDetail_SalesOrderHeader',   
  @force_invalidate_snapshot = 1,   
  @force_reinit_subscription = 1;  
  
-- Drops the merge join filter between Employee and SalesOrderHeader.  
EXEC sp_dropmergefilter   
  @publication = @publication,   
  @article = @table2,   
  @filtername = N'SalesOrderHeader_Employee',   
  @force_invalidate_snapshot = 1,   
  @force_reinit_subscription = 1;  
  
-- Drops the article for the SalesOrderDetail table.  
EXEC sp_dropmergearticle   
  @publication = @publication,   
  @article = @table3,  
  @force_invalidate_snapshot = 1,   
  @force_reinit_subscription = 1;  
  
-- Drops the article for the SalesOrderHeader table.  
EXEC sp_dropmergearticle   
  @publication = @publication,   
  @article = @table2,   
  @force_invalidate_snapshot = 1,   
  @force_reinit_subscription = 1;  
  
-- Drops the article for the Employee table.  
EXEC sp_dropmergearticle   
  @publication = @publication,   
  @article = @table1,  
  @force_invalidate_snapshot = 1,   
  @force_reinit_subscription = 1;  
GO  

Weitere InformationenSee Also

Löschen eines Artikels Delete an Article
Hinzufügen und Löschen von Artikeln aus vorhandenen Veröffentlichungen Add Articles to and Drop Articles from Existing Publications
sp_addmergearticle (Transact-SQL-) sp_addmergearticle (Transact-SQL)
sp_changemergearticle (Transact-SQL) sp_changemergearticle (Transact-SQL)
sp_helpmergearticle (Transact-SQL) sp_helpmergearticle (Transact-SQL)
Gespeicherte Automatisierungsprozeduren (Transact-SQL)Replication Stored Procedures (Transact-SQL)