sp_addscriptexec(Transact-SQL)
적용 대상: SQL Server
게시의 모든 구독자에 Transact-SQL 스크립트(.sql
파일)를 게시합니다. 이 저장 프로시저는 게시 데이터베이스의 게시자에서 실행됩니다.
구문
sp_addscriptexec
[ @publication = ] N'publication'
, [ @scriptfile = ] N'scriptfile'
[ , [ @skiperror = ] skiperror ]
[ , [ @publisher = ] N'publisher' ]
[ ; ]
인수
[ @publication = ] N'publication'
게시의 이름입니다. @publication 기본값이 없는 sysname입니다.
[ @scriptfile = ] N'scriptfile'
SQL 스크립트 파일의 전체 경로입니다. @scriptfile nvarchar(4000)이며 기본값은 없습니다.
[ @skiperror = ] skiperror
스크립트 처리 중에 오류가 발생할 때 배포 에이전트 또는 병합 에이전트 중지해야 하는지 여부를 나타냅니다. @skiperror 비트이며 기본값은 .입니다0
.
0
= 에이전트가 중지됩니다.1
= 에이전트가 스크립트를 계속하고 오류를 무시합니다.
[ @publisher = ] N'publisher'
SQL Server가 아닌 게시자를 지정합니다. @publisher sysname이며 기본값은 .입니다NULL
.
@PUBLISHER SQL Server 게시자에서 게시할 때 사용하면 안 됩니다.
반환 코드 값
0
(성공) 또는 1
(실패).
설명
sp_addscriptexec
는 트랜잭션 복제 및 병합 복제에 사용됩니다.
sp_addscriptexec
는 스냅샷 복제에 사용되지 않습니다.
사용 sp_addscriptexec
하려면 SQL Server 서비스 계정에 스냅샷 위치에 대한 읽기 및 쓰기 권한과 스크립트가 저장된 위치에 대한 읽기 권한이 있어야 합니다.
sqlcmd 유틸리티는 구독자에서 스크립트를 실행하는 데 사용되며, 구독 데이터베이스에 연결할 때 배포 에이전트 또는 병합 에이전트 사용하는 보안 컨텍스트에서 스크립트가 실행됩니다. 에이전트가 이전 버전의 SQL Server에서 실행되면 sqlcmd 유틸리티 대신 osql 유틸리티가 사용됩니다.
sp_addscriptexec
는 구독자에 스크립트를 적용하는 데 유용하며 sqlcmd 유틸리티를 사용하여 스크립트의 내용을 구독자에 적용합니다. 그러나 구독자 구성은 다를 수 있으므로 게시자에 게시하기 전에 테스트된 스크립트로 인해 구독자에 오류가 계속 발생할 수 있습니다. @skiperror 배포 에이전트 또는 병합 에이전트 오류를 무시하고 계속할 수 있습니다. sqlcmd 유틸리티를 사용하여 실행sp_addscriptexec
하기 전에 스크립트를 테스트합니다.
참고 항목
건너뛴 오류는 참조를 위해 에이전트 기록에 계속 기록됩니다.
스냅샷 배달을 위해 FTP를 사용하여 게시에 대한 스크립트 파일을 게시하는 데 사용하는 sp_addscriptexec
것은 SQL Server 구독자에 대해서만 지원됩니다.
사용 권한
sysadmin 고정 서버 역할 또는 db_owner 고정 데이터베이스 역할의 멤버만 실행할 sp_addscriptexec
수 있습니다.