sp_repldropcolumn(Transact-SQL)
게시된 기존 테이블 아티클에서 열을 삭제합니다. 이 저장 프로시저는 게시 데이터베이스의 게시자에서 실행됩니다.
![]() |
---|
이 저장 프로시저는 더 이상 사용되지 않으며 주로 이전 버전과의 호환성을 위해 지원됩니다. Microsoft SQL Server 2000 게시자 및 SQL Server 2000 재게시 구독자에서만 사용해야 합니다. SQL Server 2005 또는 SQL Server 2008에서 도입된 데이터 형식을 사용하는 열에는 이 절차를 사용하지 않아야 합니다. |
구문
sp_repldropcolumn [ @source_object = ] 'source_object', [ @column = ] 'column'
[ , [ @from_agent = ] from_agent ]
[ , [ @schema_change_script = ] 'schema_change_script' ]
[ , [ @force_invalidate_snapshot = ] force_invalidate_snapshot ]
[ , [ @force_reinit_subscription = ] force_reinit_subscription ]
인수
[ @source_object = ] 'source_object'
삭제할 열을 포함한 테이블 아티클의 이름입니다. source_object는 nvarchar(258)이며 기본값은 없습니다.[ @column = ] 'column'
삭제될 테이블 내에 있는 열의 이름입니다. column은 sysname이며 기본값은 없습니다.[ @from_agent = ] from_agent
복제 에이전트에서 저장 프로시저를 실행하는 경우 from_agent는 int이며 기본값은 0입니다. 여기서 값 1은 복제 에이전트가 이 저장 프로시저를 실행할 때 사용되며 다른 모든 경우에는 기본값 0을 사용해야 합니다.[ @schema_change_script = ] 'schema_change_script'
시스템 생성 사용자 지정 저장 프로시저를 수정하는 데 사용된 SQL Server 스크립트의 이름과 경로를 지정합니다. schema_change_script는 nvarchar(4000)이며 기본값은 NULL입니다. 복제를 사용하면 사용자가 정의한 사용자 지정 저장 프로시저가 트랜잭션 복제에 사용된 기본 프로시저 중 한 개 이상을 바꿀 수 있습니다. schema_change_script는 sp_repldropcolumn을 사용하여 복제된 테이블의 스키마가 변경된 후 실행되며 다음 중 하나를 수행하는 데 사용할 수 있습니다.사용자 지정 저장 프로시저가 자동으로 다시 생성되면 schema_change_script를 사용하여 이러한 사용자 지정 저장 프로시저를 삭제한 후 새 스키마를 지원하는 사용자 정의 사용자 지정 저장 프로시저로 바꿀 수 있습니다.
사용자 지정 저장 프로시저가 자동으로 다시 생성되지 않으면 schema_change_script를 사용하여 이러한 저장 프로시저를 다시 생성하거나 사용자 정의 사용자 지정 저장 프로시저를 만들 수 있습니다.
[ @force_invalidate_snapshot = ] force_invalidate_snapshot
스냅숏 무효화 기능을 설정하거나 해제합니다. force_invalidate_snapshot은 bit이며 기본값은 1입니다.1은 아티클에 대한 변경으로 인해 스냅숏이 무효화되도록 지정합니다. 또한 해당되는 경우에 한해 값 1은 새 스냅숏을 생성할 수 있도록 권한을 부여합니다.
0은 아티클에 대한 변경으로 인해 스냅숏이 무효화되지 않도록 지정합니다.
[ @force_reinit_subscription = ] force_reinit_subscription
구독 재초기화 기능을 설정하거나 해제합니다. force_reinit_subscription은 bit이며 기본값은 0입니다.0은 아티클에 대한 변경으로 인해 구독이 다시 초기화되지 않도록 지정합니다.
1은 아티클에 대한 변경으로 인해 구독이 다시 초기화되도록 지정합니다. 또한 해당되는 경우에 한해 값 1은 구독을 다시 초기화할 수 있도록 권한을 부여합니다.
반환 코드 값
0(성공) 또는 1(실패)
주의
sp_repldropcolumn은 더 이상 사용되지 않습니다. 게시된 테이블에 DDL(데이터 정의 언어) 명령을 실행하여 복제된 테이블 아티클에서 열을 제거해야 합니다. DDL 복제가 설정된 경우 복제는 이러한 DDL 명령을 자동으로 복제합니다. 자세한 내용은 게시 데이터베이스의 스키마 변경를 참조하십시오.
이전 버전의 Microsoft SQL Server 2000 구독자에서 실행되는 재게시 구독자의 DLL 변경 내용을 전파할 때에도 sp_repladdcolumn이 필요합니다.
sp_repldropcolumn은 모든 유형의 복제에 사용합니다.
sp_repldropcolumn을 사용할 때 DTS(데이터 변환 서비스) 패키지를 사용하는 게시에 속하는 아티클의 스키마를 변경하면 스키마 변경 사항이 구독자에게 전파되지 않고 INSERT/UPDATE/DELETE에 대한 사용자 지정 프로시저가 구독자에 다시 생성되지 않습니다. 사용자는 DTS 패키지를 수동으로 다시 생성해야 하며 구독자에서 해당 스키마를 변경해야 합니다. 스키마 업데이트가 적용되지 않으면 배포 에이전트는 후속 수정 내용을 적용하지 못할 수 있습니다. 스키마를 변경하기 전에 배달할 보류 중인 트랜잭션이 있는지 확인해야 합니다.
![]() |
---|
게시 데이터베이스의 백업은 sp_repldropcolumn을 실행한 후에 수행해야 합니다. 그렇게 하지 않으면 게시 데이터베이스 복원 후 병합이 실패할 수도 있습니다. |
사용 권한
게시자의 sysadmin 고정 서버 역할 멤버나 게시 데이터베이스의 db_owner 또는 db_ddladmin 고정 데이터베이스 역할 멤버만 sp_repldropcolumn을 실행할 수 있습니다.