Compartir a través de


sp_changepublication (Transact-SQL)

Actualizado: 12 de diciembre de 2006

Cambia las propiedades de una publicación. Este procedimiento almacenado se ejecuta en el publicador de la base de datos de publicaciones.

Icono de vínculo a temasConvenciones de sintaxis de Transact-SQL

Sintaxis

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

Argumentos

  • [ @publication = ] 'publication'
    Es el nombre de la publicación. publication es de tipo sysname y su valor predeterminado es NULL.
  • [ @property = ] 'property'
    Es la propiedad de publicación que se va a cambiar. property es de tipo nvarchar(255).
  • [ @value = ] 'value'
    Es el nuevo valor de la propiedad. value es de tipo nvarchar(255) y su valor predeterminado es NULL.

    Esta tabla describe las propiedades de la publicación que se pueden cambiar y las restricciones de los valores de esas propiedades.

    Propiedad

  • [ @force_invalidate_snapshot = ] force_invalidate_snapshot
    Confirma que la acción realizada por este procedimiento almacenado puede invalidar una instantánea existente. force_invalidate_snapshot es de tipo bit y su valor predeterminado es 0.

    0 especifica que los cambios en el artículo no invalidarán la instantánea. Si el procedimiento almacenado detecta que el cambio requiere una nueva instantánea, se producirá un error y no se realizarán cambios.

    El valor 1 especifica que los cambios en el artículo pueden invalidar la instantánea. Si existen suscripciones que requieran una nueva instantánea, este valor da permiso para que la instantánea existente se marque como obsoleta y se genere otra nueva.

    Vea en la sección de Notas las propiedades que, si se cambian, requieren que se genere una instantánea nueva.

  • [@force_reinit_subscription = ] force_reinit_subscription
    Confirma que la acción realizada por este procedimiento almacenado puede requerir la reinicialización de las suscripciones existentes. force_reinit_subscription es de tipo bit y su valor predeterminado es 0.

    El valor 0 especifica que los cambios en el artículo no obligarán a reinicializar la suscripción. Si el procedimiento almacenado detecta que el cambio obligaría a reinicializar las suscripciones existentes, se producirá un error y no se realizarán cambios.

    1 especifica que los cambios realizados en el artículo darán lugar a que se reinicialicen las suscripciones existentes y concede permiso para que se lleve a cabo la reinicialización.

  • [ @publisher = ] 'publisher'
    Especifica un publicador que no es de SQL Server. publisher es de tipo sysname y su valor predeterminado es NULL.

    [!NOTA] publisher no debería utilizarse cuando se cambien las propiedades de artículo de un publicador de SQL Server.

Notas

sp_changepublication se utiliza en la réplica transaccional y de instantáneas.

Si se cambia cualquiera de las siguientes propiedades, es necesario generar una instantánea nueva y especificar el valor 1 para el parámetro 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

Para ver una lista de objetos de publicación para Active Directory con el parámetro publish_to_active_directory, el objeto SQL Server debe estar ya creado en Active Directory.

Permisos

Sólo los miembros de la función fija de servidor sysadmin o de la función fija de base de datos db_owner pueden ejecutar sp_changepublication.

Valores de código de retorno

0 (correcto) o 1 (error)

Ejemplo

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

Vea también

Referencia

sp_addpublication (Transact-SQL)
sp_droppublication (Transact-SQL)
sp_helppublication (Transact-SQL)
Procedimientos almacenados de réplica (Transact-SQL)

Otros recursos

How to: View and Modify Publication Properties (Replication Transact-SQL Programming)
Cambiar las propiedades de la publicación y de los artículos

Ayuda e información

Obtener ayuda sobre SQL Server 2005

Historial de cambios

Versión Historial

12 de diciembre de 2006

Contenido nuevo:
  • Se agregó información acerca de los nuevos valores para la propiedad sync_method.