sp_droppublication(Transact-SQL)

적용 대상:SQL ServerAzure SQL Managed Instance

발행물과 관련 스냅샷 에이전트 삭제합니다. 게시를 삭제하기 전에 모든 구독을 삭제해야 합니다. 게시에 있는 아티클은 자동으로 삭제됩니다. 이 저장 프로시저는 게시 데이터베이스의 게시자에서 실행됩니다.

Transact-SQL 구문 표기 규칙

구문

sp_droppublication
    [ @publication = ] N'publication'
    [ , [ @ignore_distributor = ] ignore_distributor ]
    [ , [ @publisher = ] N'publisher' ]
    [ , [ @from_backup = ] from_backup ]
[ ; ]

인수

[ @publication = ] N'publication'

삭제할 게시의 이름입니다. @publication 기본값이 없는 sysname입니다. 지정하면 all 구독이 있는 게시를 제외한 모든 게시가 게시 데이터베이스에서 삭제됩니다.

[ @ignore_distributor = ] ignore_distributor

정보를 제공하기 위해서만 확인됩니다. 지원 안 됨 향후 호환성은 보장되지 않습니다.

[ @publisher = ] N'publisher'

정보를 제공하기 위해서만 확인됩니다. 지원 안 됨 향후 호환성은 보장되지 않습니다.

[ @from_backup = ] from_backup

정보를 제공하기 위해서만 확인됩니다. 지원 안 됨 향후 호환성은 보장되지 않습니다.

반환 코드 값

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

설명

sp_droppublication는 스냅샷 복제본(replica)tion 및 트랜잭션 복제본(replica)에 사용됩니다.

sp_droppublication 게시와 연결된 모든 아티클을 재귀적으로 삭제한 다음 게시 자체를 삭제합니다. 하나 이상의 구독인 경우 게시를 제거할 수 없습니다. 구독을 제거하는 방법에 대한 자세한 내용은 밀어넣기 구독 삭제 및 끌어오기 구독 삭제를 참조하세요.

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

사용 권한

sysadmin 고정 서버 역할의 멤버만 실행할 sp_droppublication수 있습니다.

예제

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

-- Remove a transactional publication.
USE [AdventureWorks2022]
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