다음을 통해 공유


sp_droppublication(Transact-SQL)

게시 및 이와 연결된 스냅숏 에이전트를 삭제합니다. 게시를 삭제하기 전에 반드시 모든 구독을 삭제해야 합니다. 게시에 있는 아티클은 자동으로 삭제됩니다. 이 저장 프로시저는 게시 데이터베이스의 게시자에서 실행됩니다.

항목 링크 아이콘Transact-SQL 구문 표기 규칙

구문

sp_droppublication [ @publication= ] 'publication' 
    [ , [ @ignore_distributor = ] ignore_distributor ]

인수

  • [ @publication = ] 'publication'
    삭제할 게시의 이름입니다. publication은 sysname이며 기본값은 없습니다. all을 지정하면 구독이 있는 경우를 제외하고 게시 데이터베이스에서 모든 게시가 삭제됩니다.

  • [ @ignore_distributor =] ignore_distributor
    정보를 제공하기 위해서만 확인됩니다. 지원되지 않습니다. 향후 호환성은 보장되지 않습니다.

반환 코드 값

0(성공) 또는 1(실패)

주의

sp_droppublication은 스냅숏 복제와 트랜잭션 복제에 사용합니다.

sp_droppublication은 게시에 연결된 모든 아티클을 재귀적으로 삭제한 다음 게시 자체를 삭제합니다. 게시에 구독이 한 개 이상 있는 경우에는 게시를 제거할 수 없습니다. 구독을 제거하는 방법에 대한 자세한 내용은 방법: 밀어넣기 구독 삭제(복제 Transact-SQL 프로그래밍)방법: 끌어오기 구독 삭제(복제 Transact-SQL 프로그래밍)를 참조하십시오.

sp_droppublication을 실행하여 게시를 삭제해도 게시 데이터베이스에서 게시된 개체가 제거되거나 구독 데이터베이스에서 해당 개체가 제거되지는 않습니다. 필요한 경우 DROP <object>를 사용하여 이러한 개체를 제거합니다.

DECLARE @publicationDB AS sysname;
DECLARE @publication AS sysname;
SET @publicationDB = N'AdventureWorks'; 
SET @publication = N'AdvWorksProductTran'; 

-- Remove a transactional publication.
USE [AdventureWorks]
EXEC sp_droppublication @publication = @publication;

-- Remove replication objects from the database.
USE [master]
EXEC sp_replicationdboption 
  @dbname = @publicationDB, 
  @optname = N'publish', 
  @value = N'false';
GO

사용 권한

sysadmin 고정 서버 역할 또는 db_owner 고정 데이터베이스 역할의 멤버만이 sp_droppublication을 실행할 수 있습니다.