sp_addsynctriggers (Transact-SQL)

Crea desencadenadores en el suscriptor utilizado con todos los tipos de suscripciones actualizables (actualización inmediata, actualización en cola, actualización 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.

Nota importanteImportante

Debe usarse el procedimiento sp_script_synctran_commands en lugar de sp_addsynctrigger. sp_script_synctran_commands genera un script que contiene las llamadas sp_addsynctrigger.

Icono de vínculo a temasConvenciones de sintaxis de Transact-SQL

Sintaxis

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

Argumentos

  • [ @sub_table=] 'sub_table'
    Es el nombre de la tabla de suscriptores. sub_table es de tipo sysname y no tiene ningún valor predeterminado.

  • [ @sub_table_owner=] 'sub_table_owner'
    Es el nombre del propietario de la tabla de suscriptores. sub_table_owner es de tipo sysname y no tiene ningún valor predeterminado.

  • [ @publisher=] 'publisher'
    Es el nombre del servidor del publicador. publisher es de tipo sysname y no tiene ningún valor predeterminado.

  • [ @publisher_db=] 'publisher_db'
    Es el nombre de la base de datos del publicador. publisher_db es de tipo sysname y no tiene ningún valor predeterminado. Si es NULL, se utiliza la base de datos actual.

  • [ @publication=] 'publication'
    Es el nombre de la publicación. Publication es de tipo sysname y no tiene ningún valor predeterminado.

  • [ @ins_proc=] 'ins_proc'
    Es el nombre del procedimiento almacenado que implementa las inserciones de transacciones sincrónicas en el publicador. ins_proc es de tipo sysname y no tiene ningún valor predeterminado.

  • [ @upd_proc=] 'upd_proc'
    Es el nombre del procedimiento almacenado que implementa las actualizaciones de transacciones sincrónicas en el publicador. ins_proc es de tipo sysname y no tiene ningún valor predeterminado.

  • [ @del_proc=] 'del_proc'
    Es el nombre del procedimiento almacenado que implementa las eliminaciones de transacciones sincrónicas en el publicador. ins_proc es de tipo sysname y no tiene ningún valor predeterminado.

  • [ @cftproc = ] 'cftproc'
    Es el nombre del procedimiento generado automáticamente que utilizan las publicaciones que permiten la actualización en cola. cftproc es de tipo sysname y no tiene ningún valor predeterminado. En 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 = ] 'proc_owner'
    Especifica la cuenta de usuario en el publicador con la que se crean todos los procedimientos almacenados generados automáticamente de publicaciones de actualización (en cola e inmediatas). proc_owner es de tipo sysname y no tiene ningún valor predeterminado.

  • [ @identity_col=] 'identity_col'
    Es el nombre de la columna de identidad del publicador. identity_col es de tipo sysname y su valor predeterminado es NULL.

  • [ @ts_col=] 'timestamp_col'
    Es el nombre de la columna timestamp del publicador. timestamp_col es de tipo sysname y su valor predeterminado es NULL.

  • [ @filter_clause=] 'filter_clause'
    Es una cláusula de restricción (WHERE) que define un filtro horizontal. Cuando escriba la cláusula de restricción, omita la palabra WHERE. filter_clausees de tipo nvarchar(4000) y su valor predeterminado es NULL.

  • [ @primary_key_bitmap =] 'primary_key_bitmap'
    Es un mapa de bits de las columnas de la clave principal de la tabla. primary_key_bitmap es de tipo varbinary(4000) y no tiene ningún valor predeterminado.

  • [ @identity_support = ] identity_support
    Habilita y deshabilita el control automático de intervalos de identidad cuando se utiliza la actualización en cola. identity_support es de tipo bit y su valor predeterminado es 0. 0 significa que no se permite ningún intervalo de identidad y 1 habilita la administración automática del intervalo de identidad.

  • [ @independent_agent = ] independent_agent
    Indica si existe un único Agente de distribución (un agente independiente) en esta publicación, o un Agente de distribución por cada base de datos de publicación y pareja de base de datos de suscripciones (un agente compartido). Este valor refleja el valor de la propiedad independent_agent de la publicación definida en el publicador. independent_agent es un bit con el valor predeterminado 0. Si es 0, se trata de una agente compartido. Si es 1, se trata de un agente independiente.

  • [ @distributor = ] 'distributor'
    Es el nombre del distribuidor. distributor es de tipo sysname y no tiene ningún valor predeterminado.

  • [ @pubversion= ] pubversion
    Indica la versión del publicador. pubversion es de tipo int y su valor predeterminado es 1. 1 significa que la versión del publicador es el Service Pack 2 de Microsoft SQL Server 2000 o una versión anterior; 2 significa que el publicador es el Service Pack 3 (SP3) de SQL Server 2000 o una versión posterior. pubversion debe establecerse explícitamente en 2 cuando la versión del publicador es el SP3 de SQL Server 2000 o una versión posterior.

Valores de código de retorno

0 (correcto) o 1 (error)

Comentarios

El Agente de distribución utiliza sp_addsynctriggers como parte de la inicialización de las suscripciones. Este procedimiento almacenado no lo suelen ejecutar los usuarios, pero puede resultar útil si el usuario debe configurar manualmente una suscripción de tipo no sync.

Permisos

Sólo los miembros de la función fija de servidor sysadmin o de la función fija de base de datos db_owner pueden ejecutar sp_addsynctriggers.