sp_repladdcolumn(Transact-SQL)
적용 대상: SQL Server Azure SQL Managed Instance
기존에 게시된 테이블 아티클에 열을 추가합니다. 이 테이블을 게시하는 모든 게시자에 새 열을 추가하거나 테이블을 게시하는 특정 게시에 열을 추가할 수 있습니다. 이 저장 프로시저는 게시 데이터베이스의 게시자에서 실행됩니다.
Important
이 저장 프로시저는 더 이상 사용되지 않으며 이전 버전과의 호환성을 위해 지원됩니다. SQL Server 2000(8.x) 게시자 및 SQL Server 2000(8.x) 재게시 구독자와 함께만 사용해야 합니다. 이 절차는 SQL Server 2005(9.x) 이상 버전에서 도입된 데이터 형식이 있는 열에서 사용하면 안 됩니다.
구문
sp_repladdcolumn
[ @source_object = ] N'source_object'
, [ @column = ] N'column'
, [ @typetext = ] N'typetext'
[ , [ @publication_to_add = ] N'publication_to_add' ]
[ , [ @from_agent = ] from_agent ]
[ , [ @schema_change_script = ] N'schema_change_script' ]
[ , [ @force_invalidate_snapshot = ] force_invalidate_snapshot ]
[ , [ @force_reinit_subscription = ] force_reinit_subscription ]
[ ; ]
인수
[ @source_object = ] N'source_object'
추가할 새 열이 포함된 테이블 아티클의 이름입니다. @source_object nvarchar(358)이며 기본값은 없습니다.
[ @column = ] N'column'
복제를 위해 추가할 테이블의 열 이름입니다. @column 기본값이 없는 sysname입니다.
[ @typetext = ] N'typetext'
추가되는 열의 정의입니다. @typetext nvarchar(3000)이며 기본값은 없습니다. 예를 들어 열 order_filled 추가되고 있고 단일 문자 필드가 아닌 NULL
단일 문자 필드이고 기본값이 N인 경우 order_filled 열 매개 변수가 되는 반면, 열의 정의인 char(1) NOT NULL
CONSTRAINT constraint_name DEFAULT 'N'은 @typetext 매개 변수 값이 됩니다.
[ @publication_to_add = ] N'publication_to_add'
새 열이 추가되는 게시의 이름입니다. @publication_to_add 기본값all
인 nvarchar(4000)입니다. 이 경우 all
이 테이블을 포함하는 모든 게시가 영향을 받습니다. @publication_to_add 지정한 경우 이 게시에만 새 열이 추가됩니다.
[ @from_agent = ] from_agent
복제 에이전트에서 저장 프로시저를 실행할지 여부를 지정합니다. @from_agent 기본값0
인 int입니다. 1
이 저장 프로시저가 복제 에이전트에 의해 실행될 때 값이 사용되며, 다른 모든 경우의 0
기본값을 사용해야 합니다.
[ @schema_change_script = ] N'schema_change_script'
시스템에서 생성된 사용자 지정 저장 프로시저를 수정하는 데 사용되는 SQL Server 스크립트의 이름과 경로를 지정합니다. @schema_change_script 기본값NULL
인 nvarchar(4000)입니다. 복제를 사용하면 사용자 정의 사용자 지정 저장 프로시저가 트랜잭션 복제에 사용되는 기본 프로시저 중 하나 이상을 대체할 수 있습니다. @schema_change_script 사용하여 sp_repladdcolumn
복제된 테이블 아티클에 대한 스키마 변경이 수행된 후 실행되며 다음과 같이 사용할 수 있습니다.
사용자 지정 저장 프로시저가 자동으로 다시 생성되는 경우 @schema_change_script 사용하여 이러한 사용자 지정 저장 프로시저를 삭제하고 새 스키마를 지원하는 사용자 정의 사용자 지정 저장 프로시저로 바꿀 수 있습니다.
사용자 지정 저장 프로시저가 자동으로 다시 생성 되지 않는 경우 @schema_change_script 사용하여 이러한 저장 프로시저를 다시 생성하거나 사용자 정의 사용자 지정 저장 프로시저를 만들 수 있습니다.
[ @force_invalidate_snapshot = ] force_invalidate_snapshot
스냅샷 무효화 기능을 설정하거나 해제합니다. @force_invalidate_snapshot 비트이며 기본값은 .입니다1
.
1
는 아티클을 변경하면 스냅샷이 유효하지 않을 수 있으며, 이 경우 새 스냅샷이1
발생할 수 있는 권한을 부여합니다.0
는 아티클을 변경해도 스냅샷이 잘못되지 않도록 지정합니다.
[ @force_reinit_subscription = ] force_reinit_subscription
구독을 다시 초기화하는 기능을 사용하거나 사용하지 않도록 설정합니다. @force_reinit_subscription 비트이며 기본값은 .입니다0
.
0
는 아티클을 변경해도 구독이 다시 초기화되지 않도록 지정합니다.1
는 아티클을 변경하면 구독이 다시 초기화될 수 있으며, 이 경우 값1
이 구독 다시 초기화에 대한 권한을 부여하도록 지정합니다.
반환 코드 값
0
(성공) 또는 1
(실패).
사용 권한
sysadmin 고정 서버 역할의 멤버와 db_owner 고정 데이터베이스 역할만 실행할 sp_repladdcolumn
수 있습니다.