sp_addsynctriggers (Transact-SQL)

Se aplica a:SQL Server

Crea desencadenadores en el suscriptor que se usan con todos los tipos de suscripciones actualizables (actualización inmediata, en cola e inmediata con actualización en cola como conmutación por error). Este procedimiento almacenado se ejecuta en el suscriptor de la base de datos de suscripciones.

Importante

El procedimiento sp_script_synctran_commands debe usarse en lugar de sp_addsynctrigger. sp_script_synctran_commands genera un script que contiene las sp_addsynctrigger llamadas.

Convenciones de sintaxis de Transact-SQL

Sintaxis

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'

Nombre de la tabla Suscriptor. @sub_table es sysname, sin ningún valor predeterminado.

[ @sub_table_owner = ] N'sub_table_owner'

Nombre del propietario de la tabla Suscriptor. @sub_table_owner es sysname, sin valor predeterminado.

[ @publisher = ] N'publisher'

Nombre del servidor del publicador. @publisher es sysname, sin ningún valor predeterminado.

[ @publisher_db = ] N'publisher_db'

Nombre de la base de datos del publicador. @publisher_db es sysname, sin ningún valor predeterminado. Si NULLes , se usa la base de datos actual.

[ @publication = ] N'publication'

Nombre de la publicación. @publication es sysname, sin ningún valor predeterminado.

[ @ins_proc = ] N'ins_proc'

Nombre del procedimiento almacenado que admite inserciones de transacciones sincrónicas en el publicador. @ins_proc es sysname, sin ningún valor predeterminado.

[ @upd_proc = ] N'upd_proc'

Nombre del procedimiento almacenado que admite actualizaciones de transacciones sincrónicas en el publicador. @upd_proc es sysname, sin ningún valor predeterminado.

[ @del_proc = ] N'del_proc'

Nombre del procedimiento almacenado que admite eliminaciones de transacciones sincrónicas en el publicador. @del_proc es sysname, sin ningún valor predeterminado.

[ @cftproc = ] N'cftproc'

Nombre del procedimiento generado automáticamente usado por publicaciones que permiten la actualización en cola. @cftproc es sysname, sin ningún valor predeterminado. En el caso de las publicaciones que permiten la actualización inmediata, este valor es NULL. Este parámetro se aplica a las publicaciones que permiten la actualización en cola (actualización en cola y actualización inmediata con actualización en cola como conmutación por error).

[ @proc_owner = ] N'proc_owner'

Especifica la cuenta de usuario del publicador en la que se crearon todos los procedimientos almacenados generados automáticamente para actualizar la publicación (en cola o inmediato). @proc_owner es sysname, sin ningún valor predeterminado.

[ @identity_col = ] N'identity_col'

Nombre de la columna de identidad en el publicador. @identity_col es sysname, con un valor predeterminado de NULL.

[ @ts_col = ] N'ts_col'

Nombre de la columna de marca de tiempo en el publicador. @ts_col es sysname, con un valor predeterminado de NULL.

[ @filter_clause = ] N'filter_clause'

Cláusula de restricción (WHERE) que define un filtro horizontal. Al especificar la cláusula de restricción, omita la palabra clave WHERE. @filter_clause es nvarchar(4000), con un valor predeterminado de NULL.

[ @primary_key_bitmap = ] primary_key_bitmap

Mapa de bits de las columnas de clave principal de la tabla. @primary_key_bitmap es varbinary(4000) sin valor predeterminado.

[ @identity_support = ] identity_support

Habilita o deshabilita el control automático de rangos de identidad cuando se utiliza la actualización en cola. @identity_support es bit, con un valor predeterminado de 0.

  • 0 significa que no hay compatibilidad con intervalos de identidades.
  • 1 habilita el control automático de intervalos de identidades.

[ @independent_agent = ] independent_agent

Indica si hay un único Agente de distribución (un agente independiente) para esta publicación o un Agente de distribución por base de datos de publicación y par de base de datos de suscripciones (un agente compartido). @independent_agent es bit, con un valor predeterminado de 0. Este valor refleja el valor de la independent_agent propiedad de la publicación definida en el publicador.

  • Si 0es , el agente es un agente compartido.
  • Si 1es , el agente es un agente independiente.

[ @distributor = ] N'distributor'

Nombre del distribuidor. @distributor es sysname, sin ningún valor predeterminado.

[ @pubversion = ] pubversion

Indica la versión del publicador. @pubversion es int, con un valor predeterminado de 1.

  • 1 significa que la versión del publicador es SQL Server 2000 (8.x) Service Pack 2 o versiones anteriores.
  • 2 significa que el publicador es SQL Server 2000 (8.x) Service Pack 3 (SP 3) y versiones posteriores.

@pubversion debe establecerse explícitamente en 2 cuando la versión del publicador es SQL Server 2000 (8.x) SP 3 y versiones posteriores.

[ @dump_cmds = ] dump_cmds

Solamente se identifica con fines informativos. No compatible. La compatibilidad con versiones posteriores no está garantizada.

Valores de código de retorno

0 (correcto) o 1 (erróneo).

Comentarios

sp_addsynctriggersla usa el Agente de distribución como parte de la inicialización de la suscripción. Este procedimiento almacenado no suele ejecutarse por los usuarios, pero puede ser útil si el usuario necesita configurar manualmente una suscripción sin sincronización.

Permisos

Solo los miembros del rol fijo de servidor sysadmin o db_owner rol fijo de base de datos pueden ejecutar sp_addsynctriggers.