sp_changesubstatus (Transact-SQL)

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

Modifica lo stato di un Sottoscrittore esistente. Questa stored procedure viene eseguita nel database di pubblicazione del server di pubblicazione.

Convenzioni di sintassi Transact-SQL

Sintassi

  
sp_changesubstatus [ [ @publication = ] 'publication' ]  
    [ , [ @article = ] 'article' ]  
    [ , [ @subscriber = ] 'subscriber' ]  
        , [ @status = ] 'status'  
    [ , [ @previous_status = ] 'previous_status' ]  
    [ , [ @destination_db = ] 'destination_db' ]  
    [ , [ @frequency_type = ] frequency_type ]  
    [ , [ @frequency_interval = ] frequency_interval ]  
    [ , [ @frequency_relative_interval = ] frequency_relative_interval ]  
    [ , [ @frequency_recurrence_factor = ] frequency_recurrence_factor ]  
    [ , [ @frequency_subday = ] frequency_subday ]  
    [ , [ @frequency_subday_interval = ] frequency_subday_interval ]  
    [ , [ @active_start_time_of_day = ] active_start_time_of_day ]  
    [ , [ @active_end_time_of_day = ] active_end_time_of_day ]  
    [ , [ @active_start_date = ] active_start_date ]  
    [ , [ @active_end_date = ] active_end_date ]  
    [ , [ @optional_command_line = ] 'optional_command_line' ]  
    [ , [ @distribution_jobid = ] distribution_jobid ]  
    [ , [ @from_auto_sync = ] from_auto_sync ]  
    [ , [ @ignore_distributor = ] ignore_distributor ]  
    [ , [ @offloadagent= ] remote_agent_activation ]  
    [ , [ @offloadserver= ] 'remote_agent_server_name' ]  
    [ , [ @dts_package_name= ] 'dts_package_name' ]  
    [ , [ @dts_package_password= ] 'dts_package_password' ]  
    [ , [ @dts_package_location= ] dts_package_location ]  
    [ , [ @skipobjectactivation = ] skipobjectactivation  
  [ , [ @distribution_job_name= ] 'distribution_job_name' ]  
    [ , [ @publisher = ] 'publisher' ]  

Argomenti

[ @publication = ] 'publication' Nome della pubblicazione. publication è sysname, con un valore predefinito .% Se la pubblicazione non è specificata, tutte le pubblicazioni sono interessate.

[ @article = ] 'article' Nome dell'articolo. Deve essere univoco all'interno della pubblicazione. article è sysname, con un valore predefinito .% Se l'articolo non è specificato, tutti gli articoli sono interessati.

[ @subscriber = ] 'subscriber'Nome del Sottoscrittore per modificare lo stato di . subscriber è sysname, con un valore predefinito .% Se il sottoscrittore non è specificato, lo stato viene modificato per tutti i Sottoscrittori nell'articolo specificato.

[ @status = ] 'status' Stato della sottoscrizione nella tabella syssubscriptions . status è sysname, senza impostazione predefinita e può essere uno di questi valori.

Valore Descrizione
active Il Sottoscrittore è sincronizzato e in fase di ricezione dei dati.
inactive Alla voce relativa al Sottoscrittore non è associata alcuna sottoscrizione.
Sottoscritto Il Sottoscrittore richiede dati, ma non è ancora sincronizzato.

[ @previous_status = ] 'previous_status' Stato precedente per la sottoscrizione. previous_status è sysname, con valore predefinito NULL. Questo parametro consente di modificare tutte le sottoscrizioni con tale stato, consentendo così funzioni di gruppo in un set specifico di sottoscrizioni, ad esempio impostando tutte le sottoscrizioni attive su sottoscritto.

[ @destination_db = ] 'destination_db' Nome del database di destinazione. destination_db è sysname, con un valore predefinito .%

[ @frequency_type = ] frequency_type Frequenza con cui pianificare l'attività di distribuzione. frequency_type è int, con un valore predefinito NULL.

[ @frequency_interval = ] frequency_interval Valore da applicare alla frequenza impostata da frequency_type. frequency_interval è int, con valore predefinito NULL.

[ @frequency_relative_interval = ] frequency_relative_interval Data dell'attività di distribuzione. Questo parametro viene usato quando frequency_type è impostato su 32 (relativo mensile). frequency_relative_interval è int e può essere uno di questi valori.

Valore Description
1 First
2 Secondo
4 Terza
8 Quarta
16 Last
NULL (predefinito)

[ @frequency_recurrence_factor = ] frequency_recurrence_factor Fattore di ricorrenza utilizzato da frequency_type. frequency_recurrence_factor è int, con un valore predefinito NULL.

[ @frequency_subday = ] frequency_subday Frequenza, espressa in minuti, per la riprogrammazione durante il periodo definito. frequency_subday è int e può essere uno di questi valori.

Valore Description
1 Una sola volta
2 Secondo
4 Minute
8 Ore
NULL (predefinito)

[ @frequency_subday_interval = ] frequency_subday_interval Intervallo per frequency_subday. frequency_subday_interval è int, con un valore predefinito NULL.

[ @active_start_time_of_day = ] active_start_time_of_day Ora del giorno in cui l'attività di distribuzione viene pianificata per la prima volta, formattata come HHmmss. active_start_time_of_day è int, con un valore predefinito NULL.

[ @active_end_time_of_day = ] active_end_time_of_day Ora del giorno in cui l'attività di distribuzione smette di essere pianificata, formattata come HHmmss. active_end_time_of_day è int, con un valore predefinito NULL.

[ @active_start_date = ] active_start_date Data della prima pianificazione dell'attività di distribuzione, formattata come yyyyMMdd. active_start_date è int, con un valore predefinito NULL.

[ @active_end_date = ] active_end_date Data in cui l'attività di distribuzione smette di essere pianificata, formattata come yyyyMMdd. active_end_date è int, con valore predefinito NULL.

[ @optional_command_line = ] 'optional_command_line' Prompt dei comandi facoltativo. optional_command_line è nvarchar(4000), con valore predefinito NULL.

[ @distribution_jobid = ] distribution_jobidID processo del agente di distribuzione nel server di distribuzione per la sottoscrizione quando si modifica lo stato della sottoscrizione da inattivo a attivo. Negli altri casi non è definito. Se una chiamata a questa stored procedure richiede l'utilizzo di più agenti di distribuzione, il risultato non è definito. distribution_jobid è binary(16), con un valore predefinito NULL.

[ @from_auto_sync = ] from_auto_sync

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

[ @ignore_distributor = ] ignore_distributor

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

[ @offloadagent = ] remote_agent_activation

Nota

L'attivazione remota dell'agente è deprecata e non è più supportata. Questo parametro è supportato solo per compatibilità con gli script di versioni precedenti. L'impostazione di remote_agent_activation su un valore diverso da 0 genera un errore.

[ @offloadserver = ] 'remote_agent_server_name'

Nota

L'attivazione remota dell'agente è deprecata e non è più supportata. Questo parametro è supportato solo per compatibilità con gli script di versioni precedenti. L'impostazione di remote_agent_server_name su qualsiasi valore non NULL genera un errore.

[ @dts_package_name = ] 'dts_package_name' Specifica il nome del pacchetto DTS (Data Transformation Services). dts_package_name è un sysname, con valore predefinito NULL. Ad esempio, per un pacchetto denominato DTSPub_Package specificare @dts_package_name = N'DTSPub_Package'.

[ @dts_package_password = ] 'dts_package_password' Specifica la password nel pacchetto. dts_package_password è sysname con un valore predefinito NULL, che specifica che la proprietà password deve essere lasciata invariata.

Nota

A ogni pacchetto DTS deve essere associata una password.

[ @dts_package_location = ] dts_package_location Specifica il percorso del pacchetto. dts_package_location è un valore int, con un valore predefinito pari a 0. Se 0, il percorso del pacchetto si trova nel server di distribuzione. Se 1, il percorso del pacchetto si trova nel Sottoscrittore. Il percorso del pacchetto può essere server di distribuzione o sottoscrittore.

[ @skipobjectactivation = ] skipobjectactivation

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

[ @distribution_job_name = ] 'distribution_job_name' Nome del processo di distribuzione. distribution_job_name è sysname, con valore predefinito NULL.

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

Nota

Non è consigliabile usare publisher quando si modificano le proprietà dell'articolo in un server di pubblicazione di SQL Server.

Valori del codice restituito

0 (esito positivo) o 1 (errore)

Osservazioni:

sp_changesubstatus viene usato nella replica snapshot e nella replica transazionale.

sp_changesubstatus modifica lo stato del Sottoscrittore nella tabella syssubscriptions con lo stato modificato. Se necessario, aggiorna lo stato dell'articolo nella tabella sysarticles per indicare l'attività attiva o inattiva. Se necessario, imposta o disattiva il flag di replica nella tabella sysobjects per la tabella replicata.

Autorizzazioni

Solo i membri del ruolo predefinito del server sysadmin , db_owner ruolo predefinito del database o l'autore della sottoscrizione può eseguire sp_changesubstatus.

Vedi anche

sp_addsubscription (Transact-SQL)
sp_dropsubscription (Transact-SQL)
sp_helpdistributor (Transact-SQL)
sp_helpsubscription (Transact-SQL)
Stored procedure di sistema (Transact-SQL)