sp_changepublication (Transact-SQL)

Data aggiornamento: 12 dicembre 2006

Consente di modificare le proprietà di una pubblicazione. Questa stored procedure viene eseguita nel database di pubblicazione del server di pubblicazione.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

sp_changepublication [ [ @publication = ] 'publication' ]
    [ , [ @property = ] 'property' ]
    [ , [ @value = ] 'value' ]
    [ , [ @force_invalidate_snapshot = ] force_invalidate_snapshot ]
    [ , [ @force_reinit_subscription = ] force_reinit_subscription ]
    [ , [ @publisher = ] 'publisher' ]

Argomenti

  • [ @publication = ] 'publication'
    Nome della pubblicazione. publication è di tipo sysname e il valore predefinito è NULL.
  • [ @property = ] 'property'
    Proprietà della pubblicazione da modificare. property è di tipo nvarchar(255).
  • [ @value = ] 'value'
    Nuovo valore della proprietà. value è di tipo nvarchar(255) e il valore predefinito è NULL.

    Nella tabella seguente vengono descritte le proprietà della pubblicazione che è possibile modificare e le limitazioni previste per i valori di tali proprietà.

    Proprietà

  • [ @force_invalidate_snapshot = ] force_invalidate_snapshot
    Segnala che l'azione eseguita da questa stored procedure potrebbe invalidare uno snapshot esistente. force_invalidate_snapshot è di tipo bit e il valore predefinito è 0.

    Il valore 0 indica che le modifiche apportate all'articolo non invalidano lo snapshot. Se la stored procedure rileva che la modifica richiede un nuovo snapshot, viene generato un errore e non viene apportata alcuna modifica.

    Il valore 1 indica che le modifiche apportate all'articolo possono invalidare lo snapshot. Se alcune sottoscrizioni esistenti richiedono un nuovo snapshot, questo valore consente di contrassegnare lo snapshot esistente come obsoleto e di generarne uno nuovo.

    Per informazioni sulle proprietà che richiedono la generazione di un nuovo snapshot quando vengono modificate, vedere la sezione Osservazioni.

  • [@force_reinit_subscription = ] force_reinit_subscription
    Segnala che l'azione eseguita da questa stored procedure potrebbe richiedere la reinizializzazione delle sottoscrizioni esistenti. force_reinit_subscription è di tipo bit e il valore predefinito è 0.

    Il valore 0 indica che le modifiche apportate all'articolo non causano la reinizializzazione della sottoscrizione. Se la stored procedure rileva che la modifica richiede la reinizializzazione delle sottoscrizioni esistenti, viene generato un errore e non viene apportata alcuna modifica.

    Il valore 1 indica che le modifiche apportate all'articolo causano la reinizializzazione della sottoscrizione esistente e consente di eseguire la reinizializzazione della sottoscrizione.

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

    [!NOTA] Evitare di utilizzare publisher quando si modificano le proprietà di un articolo in un server di pubblicazione SQL Server.

Osservazioni

sp_changepublication viene utilizzata per la replica snapshot e transazionale.

La modifica di una qualsiasi delle proprietà seguenti richiede la generazione di un nuovo snapshot. È necessario specificare il valore 1 per il parametro force_invalidate_snapshot.

  • alt_snapshot_folder
  • compress_snapshot
  • enabled_for_het_sub
  • ftp_address
  • ftp_login
  • ftp_password
  • ftp_port
  • ftp_subdirectory
  • post_snapshot_script
  • pre_snapshot_script
  • snapshot_in_defaultfolder
  • sync_mode

Per elencare oggetti di pubblicazione in Active Directory mediante il parametro publish_to_active_directory, è necessario che l'oggetto di SQL Server sia già stato creato in Active Directory.

Autorizzazioni

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

Valori restituiti

0 (esito positivo) o 1 (esito negativo)

Esempio

DECLARE @publication AS sysname
SET @publication = N'AdvWorksProductTran' 

-- Turn off DDL replication for the transactional publication.
USE [AdventureWorks]
EXEC sp_changepublication 
  @publication = @publication, 
  @property = N'replicate_ddl', 
  @value = 0
GO

Vedere anche

Riferimento

sp_addpublication (Transact-SQL)
sp_droppublication (Transact-SQL)
sp_helppublication (Transact-SQL)
Stored procedure per la replica (Transact-SQL)

Altre risorse

How to: View and Modify Publication Properties (Replication Transact-SQL Programming)
Modifica delle proprietà di pubblicazioni e articoli

Guida in linea e informazioni

Assistenza su SQL Server 2005

Cronologia modifiche

Versione Cronologia

12 dicembre 2006

Nuovo contenuto:
  • Aggiunta di informazioni sui nuovi valori disponibili per la proprietà sync_method.