Condividi tramite


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 relative alla 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)