Cómo ver y modificar propiedades de artículo (programación de la replicación con Transact-SQL)
Se pueden modificar los artículos y devolver sus propiedades mediante programación con los procedimientos almacenados de replicación. Los procedimientos almacenados que se usen dependerán del tipo de publicación a la que pertenece el artículo.
Para ver las propiedades de un artículo que pertenece a una publicación transaccional o de instantáneas
Ejecute sp_helparticle, especificando el nombre de la publicación para el parámetro @publication y el nombre de artículo para el parámetro @article. Si no especifica @article, se devolverá información para todos los artículos de la publicación.
Ejecute sp_helparticlecolumns para que los artículos de tabla muestren todas las columnas disponibles en la tabla base.
Para modificar las propiedades de un artículo que pertenece a una publicación transaccional o de instantáneas
Ejecute sp_changearticle, especificando la propiedad de artículo que se está cambiando en el parámetro @property y el nuevo valor de esta propiedad en el parámetro @value.
[!NOTA]
Si el cambio requiere la generación de una nueva instantánea, también debe especificar el valor 1 para @force_invalidate_snapshot, y si el cambio requiere que se reinicialicen los suscriptores, debe especificar el valor 1 para @force_reinit_subscription. Para obtener más información acerca de las propiedades que, cuando se cambian, requieren una nueva instantánea o una reinicialización, vea Cambiar las propiedades de la publicación y de los artículos.
Para ver las propiedades de un artículo que pertenece a una publicación de mezcla
Ejecute sp_helpmergearticle, especificando el nombre de la publicación para el parámetro @publication y el nombre de artículo para el parámetro @article. Si no especifica estos parámetros, se devolverá información para todos los artículos de una publicación o en el publicador.
Ejecute sp_helpmergearticlecolumn para que los artículos de tabla muestren todas las columnas disponibles en la tabla base.
Para modificar las propiedades de un artículo que pertenece a una publicación de mezcla
Ejecute sp_changemergearticle, especificando la propiedad de artículo que se está cambiando en el parámetro @property y el nuevo valor de esta propiedad en el parámetro @value.
[!NOTA]
Si el cambio requiere la generación de una nueva instantánea, también debe especificar el valor 1 para @force_invalidate_snapshot, y si el cambio requiere que se reinicialicen los suscriptores, debe especificar el valor 1 para @force_reinit_subscription. Para obtener más información acerca de las propiedades que, cuando se cambian, requieren una nueva instantánea o una reinicialización, vea Cambiar las propiedades de la publicación y de los artículos.
Ejemplo
Este ejemplo de replicación transaccional devuelve las propiedades del artículo publicado.
DECLARE @publication AS sysname;
SET @publication = N'AdvWorksProductTran';
USE [AdventureWorks]
EXEC sp_helparticle
@publication = @publication;
GO
Este ejemplo de replicación transaccional cambia las opciones de esquema del artículo publicado.
DECLARE @publication AS sysname;
DECLARE @article AS sysname;
DECLARE @option AS int;
SET @publication = N'AdvWorksProductTran';
SET @article = N'Product';
SET @option = (SELECT CAST(0x0000000002030073 AS int));
-- Change the schema options to replicate schema with XML.
USE [AdventureWorks]
EXEC sp_changearticle
@publication = @publication,
@article = @article,
@property = N'schema_option',
@value = @option,
@force_invalidate_snapshot = 1;
GO
Este ejemplo de replicación de mezcla devuelve las propiedades del artículo publicado.
DECLARE @publication AS sysname;
SET @publication = N'AdvWorksSalesOrdersMerge';
USE [AdventureWorks]
EXEC sp_helpmergearticle
@publication = @publication;
GO
Este ejemplo de replicación de mezcla cambia los valores de detección de conflicto para un artículo publicado.
DECLARE @publication AS sysname;
DECLARE @article AS sysname;
SET @publication = N'AdvWorksSalesOrdersMerge';
SET @article = N'SalesOrderHeader';
-- Enable column-level conflict tracking.
-- Changing this property requires that existing subscriptions
-- be reinitialized and that a new snapshot be generated.
USE [AdventureWorks]
EXEC sp_changemergearticle
@publication = @publication,
@article = @article,
@property = N'column_tracking',
@value = N'true',
@force_invalidate_snapshot = 1,
@force_reinit_subscription = 1;
GO
Vea también