Condividi tramite


sp_addsynctriggers (Transact-SQL)

Si applica a: SQL Server

Crea trigger nel Sottoscrittore usati con tutti i tipi di sottoscrizioni aggiornabili (immediato, in coda e aggiornamento immediato con aggiornamento in coda come failover). Questa stored procedure viene eseguita nel database di sottoscrizione del Sottoscrittore.

Importante

La routine sp_script_synctran_commands deve essere utilizzata invece di sp_addsynctrigger. sp_script_synctran_commands genera uno script che contiene le sp_addsynctrigger chiamate.

Convenzioni relative alla sintassi Transact-SQL

Sintassi

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 ]
[ ; ]

Argomenti

[ @sub_table = ] N'sub_table'

Nome della tabella del Sottoscrittore. @sub_table è sysname, senza impostazione predefinita.

[ @sub_table_owner = ] N'sub_table_owner'

Nome del proprietario della tabella del Sottoscrittore. @sub_table_owner è sysname, senza impostazione predefinita.

[ @publisher = ] N'publisher'

Nome del server di pubblicazione. @publisher è sysname, senza impostazione predefinita.

[ @publisher_db = ] N'publisher_db'

Nome del database del server di pubblicazione. @publisher_db è sysname, senza impostazione predefinita. Se NULL, viene utilizzato il database corrente.

[ @publication = ] N'publication'

Nome della pubblicazione. @publication è sysname, senza impostazione predefinita.

[ @ins_proc = ] N'ins_proc'

Nome della stored procedure che supporta gli inserimenti sincroni delle transazioni nel server di pubblicazione. @ins_proc è sysname, senza impostazione predefinita.

[ @upd_proc = ] N'upd_proc'

Nome della stored procedure che supporta gli aggiornamenti sincroni delle transazioni nel server di pubblicazione. @upd_proc è sysname, senza impostazione predefinita.

[ @del_proc = ] N'del_proc'

Nome della stored procedure che supporta le eliminazioni sincrone delle transazioni nel server di pubblicazione. @del_proc è sysname, senza impostazione predefinita.

[ @cftproc = ] N'cftproc'

Nome della routine generata automaticamente utilizzata dalle pubblicazioni che consentono l'aggiornamento in coda. @cftproc è sysname, senza impostazione predefinita. Per le pubblicazioni che consentono l'aggiornamento immediato, questo valore è NULL. Questo parametro viene applicato alle pubblicazioni che consentono l'aggiornamento in coda (aggiornamento in coda e aggiornamento immediato sostituito dall'aggiornamento in coda in caso di errore).

[ @proc_owner = ] N'proc_owner'

Specifica l'account utente nel server di pubblicazione in cui sono state create tutte le stored procedure generate automaticamente per l'aggiornamento della pubblicazione (accodato e/o immediato). @proc_owner è sysname, senza impostazione predefinita.

[ @identity_col = ] N'identity_col'

Nome della colonna Identity nel server di pubblicazione. @identity_col è sysname, con un valore predefinito .NULL

[ @ts_col = ] N'ts_col'

Nome della colonna timestamp nel server di pubblicazione. @ts_col è sysname, con un valore predefinito .NULL

[ @filter_clause = ] N'filter_clause'

Clausola di restrizione (WHERE) che definisce un filtro orizzontale. Quando si specifica la clausola di restrizione, omettere la parola chiave WHERE. @filter_clause è nvarchar(4000), con il valore predefinito NULL.

[ @primary_key_bitmap = ] primary_key_bitmap

Mappa di bit delle colonne chiave primaria nella tabella. @primary_key_bitmap è varbinary(4000), senza impostazione predefinita.

[ @identity_support = ] identity_support

Abilita e disabilita la gestione automatica degli intervalli di valori Identity quando viene utilizzato l'aggiornamento in coda. @identity_support è bit, con un valore predefinito .0

  • 0 significa che non è disponibile alcun supporto per l'intervallo di valori Identity.
  • 1 abilita la gestione automatica dell'intervallo di valori Identity.

[ @independent_agent = ] independent_agent

Indica se è presente un singolo agente di distribuzione (un agente indipendente) per la pubblicazione o un agente di distribuzione per ogni database di pubblicazione e coppia di database di sottoscrizione (un agente condiviso). @independent_agent è bit, con il valore predefinito 0. Questo valore riflette il valore della independent_agent proprietà della pubblicazione definita nel server di pubblicazione.

  • Se 0, l'agente è un agente condiviso.
  • Se 1, l'agente è un agente indipendente.

[ @distributor = ] N'distributor'

Nome del server di distribuzione. @distributor è sysname, senza impostazione predefinita.

[ @pubversion = ] pubversion

Indica la versione del server di pubblicazione. @pubversion è int, con il valore predefinito 1.

  • 1 significa che la versione del server di pubblicazione è SQL Server 2000 (8.x) Service Pack 2 o versioni precedenti.
  • 2 significa che il server di pubblicazione è SQL Server 2000 (8.x) Service Pack 3 (SP 3) e versioni successive.

@pubversion deve essere impostato in modo esplicito su 2 quando la versione del server di pubblicazione è SQL Server 2000 (8.x) SP 3 e versioni successive.

[ @dump_cmds = ] dump_cmds

Identificato solo a scopo informativo. Non supportato. Non è garantita la compatibilità con le versioni future.

Valori del codice restituito

0 (esito positivo) o 1 (errore).

Osservazioni:

sp_addsynctriggersviene usato dalla agente di distribuzione come parte dell'inizializzazione della sottoscrizione. Questa stored procedure non viene in genere eseguita dagli utenti, ma può essere utile se l'utente deve configurare manualmente una sottoscrizione senza sincronizzazione.

Autorizzazioni

Solo i membri del ruolo predefinito del server sysadmin o db_owner ruolo predefinito del database possono eseguire sp_addsynctriggers.