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

Se debe usar el procedimiento sp_script_synctran_commands en lugar de sp_addsynctrigger. sp_script_synctran_commands genera un script que contiene las llamadas a sp_addsynctrigger.

Icono de vínculo a temas Convenciones 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 del suscriptor. 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 del suscriptor. 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 admite 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 admite 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 admite 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 usado por 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 crearon 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 en el publicador. identity_col es de tipo sysname, con un valor predeterminado de NULL.

  • [ @ts_col=] 'timestamp_col'
    Es el nombre de la columna timestamp en el 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. Al especificar la cláusula de restricción, omita la palabra clave WHERE. filter_clausees de tipo nvarchar(4000), con un valor predeterminado de NULL.

  • [ @primary_key_bitmap =] 'primary_key_bitmap'
    Es un mapa de bits de las columnas de clave principal de la tabla. primary_key_bitmap es de tipo varbinary (4000) y no tiene 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 de tipo bit y su valor predeterminado es 0. 0 significa que no se admite 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 de tipo bit y su valor predeterminado es 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 indica que la versión del publicador es Microsoft SQL Server 2000 Service Pack 2 o anterior; 2 indica que el publicador es SQL Server 2000 Service Pack 3 (SP3) o posterior. pubversion debe establecerse explícitamente en 2 cuando la versión del publicador es SQL Server 2000 SP3 o 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

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

Vea también

Referencia

sp_script_synctran_commands (Transact-SQL)

Procedimientos almacenados del sistema (Transact-SQL)

Conceptos

Suscripciones actualizables para replicación transaccional