Compartilhar via


sp_addsynctriggers (Transact-SQL)

Aplica-se: SQL Server

Cria gatilhos no Assinante usados com todos os tipos de assinaturas atualizáveis (atualização imediata, enfileirada e imediata com atualização enfileirada como failover). Esse procedimento armazenado é executado no Assinante no banco de dados de assinatura.

Importante

Deve ser utilizado o procedimento sp_script_synctran_commands em vez de sp_addsynctrigger. sp_script_synctran_commands gera um script que contém as sp_addsynctrigger chamadas.

Convenções de sintaxe de Transact-SQL

Sintaxe

sp_addsynctriggers
    [ @sub_table = ] N'sub_table'
    , [ @sub_table_owner = ] N'sub_table_owner'
    , [ @publisher = ] N'publisher'
    , [ @publisher_db = ] N'publisher_db'
    , [ @publication = ] N'publication'
    , [ @ins_proc = ] N'ins_proc'
    , [ @upd_proc = ] N'upd_proc'
    , [ @del_proc = ] N'del_proc'
    , [ @cftproc = ] N'cftproc'
    , [ @proc_owner = ] N'proc_owner'
    [ , [ @identity_col = ] N'identity_col' ]
    [ , [ @ts_col = ] N'ts_col' ]
    [ , [ @filter_clause = ] N'filter_clause' ]
    , [ @primary_key_bitmap = ] primary_key_bitmap
    [ , [ @identity_support = ] identity_support ]
    [ , [ @independent_agent = ] independent_agent ]
    , [ @distributor = ] N'distributor'
    [ , [ @pubversion = ] pubversion ]
    [ , [ @dump_cmds = ] dump_cmds ]
[ ; ]

Argumentos

@sub_table [ = ] N'sub_table'

O nome da tabela Assinante. @sub_table é sysname, sem padrão.

@sub_table_owner [ = ] N'sub_table_owner'

O nome do proprietário da tabela Assinante. @sub_table_owner é sysname, sem padrão.

@publisher [ = ] N'editor'

O nome do servidor do Publicador. @publisher é sysname, sem padrão.

@publisher_db [ = ] N'publisher_db'

O nome do banco de dados Publicador. @publisher_db é sysname, sem padrão. Se NULL, o banco de dados atual é usado.

@publication [ = ] N'publicação'

O nome da publicação. @publication é sysname, sem padrão.

@ins_proc [ = ] N'ins_proc'

O nome do procedimento armazenado que dá suporte a inserções de transações síncronas no Publicador. @ins_proc é sysname, sem padrão.

@upd_proc [ = ] N'upd_proc'

O nome do procedimento armazenado que dá suporte a atualizações de transações síncronas no Publicador. @upd_proc é sysname, sem padrão.

@del_proc [ = ] N'del_proc'

O nome do procedimento armazenado que dá suporte à transação síncrona é excluído no Publicador. @del_proc é sysname, sem padrão.

@cftproc [ = ] N'cftproc'

O nome do procedimento gerado automaticamente usado por publicações que permitem a atualização em fila. @cftproc é sysname, sem padrão. Para publicações que permitem atualização imediata, esse valor é NULL. Este parâmetro se aplica a publicações que permitem atualização feita fila (Atualização Feita fila e Atualização Imediata com Atualização Feita fila como Failover).

@proc_owner [ = ] N'proc_owner'

Especifica a conta de usuário no Publicador sob a qual todos os procedimentos armazenados gerados automaticamente para atualizar a publicação (enfileirada e/ou imediata) foram criados. @proc_owner é sysname, sem padrão.

@identity_col [ = ] N'identity_col'

O nome da coluna de identidade no Publicador. @identity_col é sysname, com um padrão de NULL.

@ts_col [ = ] N'ts_col'

O nome da coluna de carimbo de data/hora no Publicador. @ts_col é sysname, com um padrão de NULL.

@filter_clause [ = ] N'filter_clause'

Uma cláusula de restrição (WHERE) que define um filtro horizontal. Ao inserir a cláusula de restrição, omita a palavra-chave WHERE. @filter_clause é nvarchar(4000), com um padrão de NULL.

@primary_key_bitmap [ = ] primary_key_bitmap

Um mapa de bits das colunas de chave primária na tabela. @primary_key_bitmap é varbinary(4000), sem padrão.

@identity_support [ = ] identity_support

Ativa e desativa o tratamento do intervalo de identidade automático quando a atualização na fila é usada. @identity_support é bit, com um padrão de 0.

  • 0 significa que não há suporte para intervalo de identidade.
  • 1 Permite o tratamento automático do intervalo de identidade.

@independent_agent [ = ] independent_agent

Indica se há um único Distribution Agent (um agente independente) para esta publicação ou um Distribution Agent por banco de dados de publicação e par de banco de dados de assinatura (um agente compartilhado). @independent_agent é bit, com um padrão de 0. Esse valor reflete o independent_agent valor da propriedade da publicação definida no Publicador.

  • Se 0, o agente é um Agente Compartilhado.
  • Se 1, o agente é um agente independente.

@distributor [ = ] N'distribuidor'

O nome do Distribuidor. @distributor é sysname, sem padrão.

@pubversion [ = ] pubversão

Indica a versão do Publicador. @pubversion é int, com um padrão de 1.

  • 1 significa que a versão do Publicador é SQL Server 2000 (8.x) Service Pack 2 ou versões anteriores.
  • 2 significa que o Publicador é o SQL Server 2000 (8.x) Service Pack 3 (SP 3) e versões posteriores.

@pubversion deve ser definido explicitamente como 2 quando a versão do Publicador for SQL Server 2000 (8.x) SP 3 e versões posteriores.

@dump_cmds [ = ] dump_cmds

Identificado apenas para fins informativos. Não há suporte. A compatibilidade futura não está garantida.

Valores do código de retorno

0 (sucesso) ou 1 (falha).

Comentários

sp_addsynctriggers é usado pelo Distribution Agent como parte da inicialização da assinatura. Esse procedimento armazenado normalmente não é executado pelos usuários, mas pode ser útil se o usuário precisar configurar uma assinatura sem sincronização manualmente.

Permissões

Somente membros da função de servidor fixa sysadmin ou db_owner função de banco de dados fixa podem executar sp_addsynctriggers.