sp_droparticle (Transact-SQL)

Область применения: yesSQL Server (все поддерживаемые версии) YesУправляемый экземпляр SQL Azure

Удаляет статью из моментального снимка или публикации транзакций. Статья не может быть удалена, если на нее есть подписка. Эта хранимая процедура выполняется на издателе в базе данных публикации.

Topic link iconСинтаксические обозначения в Transact-SQL

Синтаксис

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

Аргументы

[ @publication = ] 'publication' Имя публикации, содержащей удаляемую статью. publicationsysname без значения по умолчанию.

[ @article = ] 'article' Имя удаляемой статьи. Articlesysname без значения по умолчанию.

[ @ignore_distributor = ] ignore_distributor

Указано только в ознакомительных целях. Не поддерживается. Совместимость с будущими версиями не гарантируется.

[ @force_invalidate_snapshot = ] force_invalidate_snapshot Подтверждает, что действие, выполняемое этой хранимой процедурой, может сделать недействительным существующий моментальный снимок. force_invalidate_snapshotнемного, значение по умолчанию равно 0.

0 указывает, что изменения в статье не приводят к недопустимому моментальному снимку. Если хранимая процедура определяет, что изменение требует создания нового моментального снимка, возникает ошибка и изменения не выполняются.

1 указывает, что изменения статьи могут привести к тому, что моментальный снимок будет недействительным, и если существуют существующие подписки, для которых требуется новый моментальный снимок, дает разрешение на добавление существующего моментального снимка как устаревшего и создания нового моментального снимка.

[ @publisher = ] 'publisher' Указывает издатель, отличный от Microsoft SQL Server. Publishersysname с значением NULL по умолчанию.

Примечание

издатель не должен использоваться при изменении свойств статьи на издателе SQL Server.

[ @from_drop_publication = ] from_drop_publication

Указано только в ознакомительных целях. Не поддерживается. Совместимость с будущими версиями не гарантируется.

Значения кода возврата

0 (успешно) или 1 (сбой)

Remarks

sp_droparticle используется в репликации моментальных снимков и транзакций.

Для статей с горизонтальной фильтрацией sp_droparticle проверяет столбец типа статьи в таблице sysarticles (Transact-SQL), чтобы определить, следует ли также удалять представление или фильтр. Если представление или фильтр были созданы автоматически, они удаляются вместе со статьей. Если они были созданы вручную, они не удаляются.

При выполнении sp_droparticle удаления статьи из публикации объект не удаляется из базы данных публикации или соответствующего объекта из базы данных подписки. При необходимости используйте инструкцию DROP <object> для удаления этих объектов вручную.

Пример

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

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

Разрешения

Только члены предопределенной роли сервера sysadmin или db_owner предопределенной роли базы данных могут выполнять sp_droparticle.

См. также

Delete an Article (Удаление статьи)
Добавление и удаление статей в существующих публикациях
sp_addarticle (Transact-SQL)
sp_changearticle (Transact-SQL)
sp_helparticle (Transact-SQL)
sp_helparticlecolumns (Transact-SQL)
Хранимые процедуры репликации (Transact-SQL)