sp_register_custom_scripting (Transact-SQL)
A replicação permite procedimentos armazenados personalizados definidos pelo usuário, para substituir um ou mais dos procedimentos padrão usados em replicação transacional. Quando uma alteração de esquema é feita em uma tabela replicada, esses procedimentos armazenados são recriados. sp_register_custom_scripting registra um procedimento armazenado ou arquivo de script Transact-SQL que é executado quando uma alteração de esquema ocorre para gerar um script de definição para o novo procedimento armazenado personalizado. Esse novo procedimento armazenado personalizado deve refletir o novo esquema da tabela. sp_register_custom_scripting é executado no Publicador, no banco de dados de publicação, e o arquivo script registrado ou o procedimento armazenado é executado no Assinante quando ocorre uma alteração no esquema.
Convenções da sintaxe Transact-SQL
Sintaxe
sp_register_custom_scripting [ @type = ] 'type'
[ @value = ] 'value'
[ , [ @publication = ] 'publication' ]
[ , [ @article = ] 'article' ]
Argumentos
[ @type = ] 'type'
É o tipo de procedimento armazenado personalizado ou script que está sendo registrado. type é varchar(16), sem padrão, e pode ter um dos valores a seguir.Valor
Descrição
insert
Procedimento armazenado personalizado registrado é executado quando uma instrução INSERT é replicada.
update
Procedimento armazenado personalizado registrado é executado quando uma instrução UPDATE é replicada.
excluir
Procedimento armazenado personalizado registrado é executado quando uma instrução DELETE é replicada.
custom_script
O script é executado ao término do gatilho DDL (Data Definition Language).
[ @value= ] 'value'
Nome de um procedimento armazenado ou nome e caminho completamente qualificado para o arquivo script Transact-SQL que está sendo registrado. value é nvarchar(1024), sem padrão.Observação A especificação de NULL para o parâmetro value irá cancelar o registro de um script registrado anteriormente, e é o mesmo que executar sp_unregister_custom_scripting.
Quando o valor de type é custom_script, o nome e caminho completo de um arquivo de script Transact-SQL é previsto. Caso contrário, value deve ser o nome de um procedimento armazenado registrado.
[ @publication = ] 'publication'
Nome da publicação para a qual o procedimento armazenado personalizado ou script está sendo registrado. publication é sysname, com um padrão de NULL.[ @article = ] 'article'
Nome do artigo para o qual o procedimento armazenado personalizado ou script está sendo registrado. article é sysname, com um padrão de NULL.
Valores de código de retorno
0 (êxito) ou 1 (falha)
Comentários
sp_register_custom_scripting é usado em instantâneo e replicação transacional.
Esse procedimento armazenado deve ser executado antes de efetuar uma alteração de esquema em uma tabela replicada. Para obter mais informações sobre como usar esse procedimento armazenado, consulte Regenerar os procedimentos transacionais personalizados para refletir alterações de esquema.
Permissões
Somente membros da função de servidor fixa sysadmin ou da função de banco de dados fixa db_owner ou db_ddladmin podem executar sp_register_custom_scripting.