Condividi tramite


sp_changesubscription (Transact-SQL)

Modifica le proprietà di una sottoscrizione pull o push transazionale o snapshot coinvolta in una replica transazionale ad aggiornamento in coda. Per modificare le proprietà di tutti gli altri tipi di sottoscrizioni pull, utilizzare sp_change_subscription_properties (Transact-SQL). sp_changesubscription viene eseguita nel database di pubblicazione del server di pubblicazione.

Nota sulla sicurezzaNota sulla sicurezza

 Quando si configura un server di distribuzione remoto per un server di pubblicazione, i valori specificati per tutti i parametri, inclusi job_login e job_password vengono inviati al server di distribuzione come testo normale. È consigliabile crittografare la connessione tra il server di pubblicazione e il server di distribuzione remoto prima di eseguire questa stored procedure. Per ulteriori informazioni, vedere Crittografia delle connessioni a SQL Server.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

sp_changesubscription [ @publication = ] 'publication'
        , [ @article = ] 'article'
        , [ @subscriber = ] 'subscriber'
        , [ @destination_db = ] 'destination_db'
        , [ @property = ] 'property'
        , [ @value = ] 'value'
    [ , [ @publisher = ] 'publisher' ]

Argomenti

  • [ @publication= ] 'publication'
    Nome della pubblicazione da modificare. publication è di tipo sysname e non prevede alcun valore predefinito.

  • [ @article = ] 'article'
    Nome dell'articolo da modificare. article è di tipo sysname e non prevede alcun valore predefinito.

  • [ @subscriber = ] 'subscriber'
    Nome del Sottoscrittore. subscriber è di tipo sysname e non prevede alcun valore predefinito.

  • [ @destination_db = ] 'destination_db'
    Nome del database di sottoscrizione. destination_db è di tipo sysname e non prevede alcun valore predefinito.

  • [ @property=] 'property'
    Proprietà da modificare per la sottoscrizione specificata. property è di tipo nvarchar(30). I possibili valori sono descritti nella tabella.

  • [ @value=] 'value'
    Nuovo valore per la proprietà property specificata. value è di tipo nvarchar(4000) e i possibili valori sono descritti nella tabella.

    Proprietà

    Valore

    Descrizione

    distrib_job_login

     

    Account di accesso per l'account di Microsoft Windows utilizzato per l'esecuzione dell'agente.

    distrib_job_password

     

    Password dell'account di Windows utilizzato per l'esecuzione dell'agente.

    subscriber_catalog

    Catalogo da utilizzare per stabilire una connessione a un provider OLE DB. Questa proprietà è valida solo per i Sottoscrittori non Microsoft SQL Server.

    subscriber_datasource

    Nome dell'origine dei dati riconosciuto dal provider OLE DB. Questa proprietà è valida solo per i Sottoscrittori non SQL Server.

    subscriber_location

    Percorso del database riconosciuto dal provider OLE DB. Questa proprietà è valida solo per i Sottoscrittori non SQL Server.

    subscriber_login

     

    Nome dell'account di accesso nel Sottoscrittore.

    subscriber_password

     

    Password complessa per l'account di accesso fornito.

    subscriber_security_mode

    1

    Esegue la connessione al Sottoscrittore utilizzando l'autenticazione di Windows.

     

    0

    Esegue la connessione al Sottoscrittore utilizzando l'autenticazione di SQL Server.

    subscriber_provider

    ProgID univoco con il quale viene registrato il provider OLE DB per l'origine dei dati non SQL Server. Questa proprietà è valida solo per i Sottoscrittori non SQL Server.

    subscriber_providerstring

    Stringa di connessione specifica del provider OLE DB che identifica l'origine dei dati. Questa proprietà è valida solo per i Sottoscrittori non SQL Server.

    subscriptionstreams

    Numero di connessioni consentite per agente di distribuzione per l'applicazione di batch di modifiche in parallelo a un Sottoscrittore. Per i server di pubblicazione SQL Server è supportato un intervallo di valori da 1 a 64. Per i Sottoscrittori non SQL Server, i server di pubblicazione Oracle o le sottoscrizioni peer-to-peer il valore di questa proprietà deve essere 0.

    subscriber_type

    1

    Server dell'origine dei dati ODBC.

    3

    Provider OLE DB.

  • [ @publisher = ] 'publisher'
    Specifica un server di pubblicazione non SQL Server. publisher è di tipo sysname e il valore predefinito è NULL.

    Nota

    Non specificare publisher per un server di pubblicazione SQL Server.

Valori restituiti

0 (esito positivo) o 1 (esito negativo)

Osservazioni

sp_changesubscription viene utilizzata in repliche transazionali e snapshot.

È possibile utilizzare sp_changesubscription solo per modificare le proprietà di sottoscrizioni push o pull coinvolte in una replica transazionale ad aggiornamento in coda. Per modificare le proprietà di tutti gli altri tipi di sottoscrizioni pull, utilizzare sp_change_subscription_properties (Transact-SQL).

Dopo la modifica dell'account di accesso o della password di un agente, è necessario interrompere e riavviare l'agente per rendere effettiva la modifica.

Autorizzazioni

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