sp_changesubscription (Transact-SQL)

Si applica a:SQL Server Istanza gestita di SQL di Azure

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, usare sp_change_subscription_properties (Transact-SQL). sp_changesubscription viene eseguito nel database di pubblicazione del server di pubblicazione.

Importante

Quando si configura un server di pubblicazione con un server di distribuzione remoto, 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 altre informazioni, vedere Abilitare le connessioni crittografate al motore di database (Gestione configurazione SQL Server).

Convenzioni di 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è sysname, senza impostazione predefinita

[ @article = ] 'article' Nome dell'articolo da modificare. article è sysname, senza impostazione predefinita.

[ @subscriber = ] 'subscriber' Nome del Sottoscrittore. subscriber è sysname, senza impostazione predefinita.

[ @destination_db = ] 'destination_db' Nome del database di sottoscrizione. destination_db è sysname, senza impostazione predefinita.

[ @property = ] 'property' Proprietà da modificare per la sottoscrizione specificata. property è nvarchar(30)e può essere uno dei valori della tabella.

[ @value = ] 'value'Nuovo valore per la proprietà specificata. value è nvarchar(4000)e può essere uno dei valori della tabella.

Proprietà valore Descrizione
distrib_job_login Accedere per l'account di Microsoft Windows con cui viene eseguito l'agente.
distrib_job_password Password dell'account di Windows utilizzato per l'esecuzione dell'agente.
subscriber_catalog Catalogo da utilizzare per stabilire una connessione al 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 Usare l'autenticazione di SQL Server per la connessione al Sottoscrittore.
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 di SQL Server è supportato un intervallo di valori compreso tra 1 e 64 . Questa proprietà deve essere 0 per sottoscrittori non SQL Server, server di pubblicazione Oracle o sottoscrizioni peer-to-peer.
subscriber_type 1 Server dell'origine dei dati ODBC.
3 Provider OLE DB
memory_optimized bit Indica che la sottoscrizione supporta tabelle ottimizzate per la memoria. memory_optimized è bit, dove 1 è uguale a true (la sottoscrizione supporta tabelle ottimizzate per la memoria).

[ @publisher = ] 'publisher' Specifica un server di pubblicazione non SQL Server. publisher è sysname, con valore predefinito NULL.

Nota

Non è necessario specificare publisher per un server di pubblicazione di SQL Server.

Valori del codice restituito

0 (esito positivo) o 1 (errore)

Osservazioni:

sp_changesubscription viene usato nella replica snapshot e transazionale.

sp_changesubscription può essere usato solo per modificare le proprietà delle sottoscrizioni push o delle sottoscrizioni pull coinvolte nella replica transazionale ad aggiornamento in coda. Per modificare le proprietà di tutti gli altri tipi di sottoscrizioni pull, usare sp_change_subscription_properties (Transact-SQL).

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

Autorizzazioni

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

Vedi anche

sp_addsubscription (Transact-SQL)
sp_dropsubscription (Transact-SQL)