Cómo especificar los tipos de artículo (programación de la replicación con Transact-SQL)
Los tipos de artículo predeterminados para la replicación son los artículos de tabla, pero puede publicar otros objetos de base de datos como los artículos, entre los que se incluyen las vistas, los procedimientos almacenados, las funciones definidas por el usuario y la ejecución de procedimientos almacenados. Puede usar los procedimientos almacenados de replicación para especificar mediante programación un tipo de artículo al definir un artículo. Los procedimientos que se usan dependen del tipo de replicación y del tipo de artículo.
[!NOTA]
La designación sólo de esquema al definir artículos de tabla, vista y procedimientos almacenados indica que sólo se replica la definición del objeto.
Para publicar un artículo de tabla en una publicación transaccional o de instantáneas
En la base de datos de publicación del publicador, ejecute sp_addarticle. Especifique uno de los valores siguientes para @type a fin de definir el tipo de artículo:
logbased - artículo de tabla basado en registro, que es el valor predeterminado para la replicación transaccional y de instantáneas. La replicación genera automáticamente el procedimiento almacenado usado para el filtrado horizontal y la vista que define un artículo filtrado verticalmente.
logbased manualfilter - artículo basado en registro y filtrado horizontalmente. El usuario crea y define manualmente el procedimiento almacenado usado para el filtrado horizontal, que se especifica para @filter. Para obtener más información, vea Cómo definir y modificar un filtro de fila estático (programación de la replicación con Transact-SQL).
logbased manualview - artículo basado en registro y filtrado verticalmente. El usuario crea y define la vista que define el artículo filtrado verticalmente, que se especifica para @sync_object. Para obtener más información, vea Cómo definir y modificar un filtro de fila estático (programación de la replicación con Transact-SQL) y Cómo definir y modificar un filtro de columna (programación de la replicación con Transact-SQL).
logbased manualboth - artículo basado en registro y filtrado horizontal y verticalmente. El usuario crea y define el procedimiento almacenado usado para el filtrado horizontal y la vista que define el artículo filtrado verticalmente; éstos se especifican para @filter y @sync_object, respectivamente. Para obtener más información, vea Cómo definir y modificar un filtro de fila estático (programación de la replicación con Transact-SQL) y Cómo definir y modificar un filtro de columna (programación de la replicación con Transact-SQL).
Esto define un nuevo artículo para la publicación. Para obtener más información, vea Cómo definir un artículo (programación de la replicación con Transact-SQL).
Para los artículos logbased manualboth y logbased manualfilter, ejecute sp_articlefilter a fin de generar el procedimiento almacenado de filtrado para un artículo filtrado horizontalmente. Para obtener más información, vea Cómo definir y modificar un filtro de fila estático (programación de la replicación con Transact-SQL).
Para los artículos logbased manualboth, logbased manualview y logbased manualfilter, ejecute sp_articleview a fin de generar la vista que define el artículo filtrado verticalmente. Para obtener más información, vea Cómo definir y modificar un filtro de columna (programación de la replicación con Transact-SQL).
Para publicar una vista o un artículo de vista indizada en una publicación transaccional o de instantáneas
En la base de datos de publicación del publicador, ejecute sp_addarticle. Especifique uno de los valores siguientes para @type a fin de definir el tipo de artículo:
indexed view logbased - artículo de vista indizada basado en registro. La replicación genera automáticamente el procedimiento almacenado usado para el filtrado horizontal y la vista que define un artículo filtrado verticalmente.
view schema only - artículo de vista sólo de esquema. La tabla base debe replicarse también.
indexed view schema only - artículo de vista indizada sólo de esquema. La tabla base debe replicarse también.
indexed view logbased manualfilter - artículo de vista indizada basado en registro y filtrado horizontalmente. El usuario crea y define manualmente el procedimiento almacenado usado para el filtrado horizontal, que se especifica para @filter. Para obtener más información, vea Cómo definir y modificar un filtro de fila estático (programación de la replicación con Transact-SQL).
indexed view logbased manualview - artículo de vista indizada basado en registro y filtrado. El usuario crea y define la vista que define el artículo filtrado verticalmente, que se especifica para @sync_object. Para obtener más información, vea Cómo definir y modificar un filtro de fila estático (programación de la replicación con Transact-SQL) y Cómo definir y modificar un filtro de columna (programación de la replicación con Transact-SQL).
indexed view logbased manualboth - artículo de vista indizada basado en registro y filtrado. El usuario crea y define el procedimiento almacenado usado para el filtrado horizontal y la vista que define un artículo filtrado verticalmente; éstos se especifican para @filter y @sync_object, respectivamente. Para obtener más información, vea Cómo definir y modificar un filtro de fila estático (programación de la replicación con Transact-SQL) y Cómo definir y modificar un filtro de columna (programación de la replicación con Transact-SQL).
Esto define un nuevo artículo para la publicación. Para obtener más información, vea Cómo definir un artículo (programación de la replicación con Transact-SQL).
Para los artículos logbased manualboth y logbased manualfilter, ejecute sp_articlefilter a fin de generar el procedimiento almacenado de filtrado para un artículo filtrado horizontalmente. Para obtener más información, vea Cómo definir y modificar un filtro de fila estático (programación de la replicación con Transact-SQL).
Para los artículos logbased manualboth, logbased manualview y logbased manualfilter, ejecute sp_articleview a fin de generar la vista que define el artículo filtrado verticalmente. Para obtener más información, vea Cómo definir y modificar un filtro de columna (programación de la replicación con Transact-SQL).
Para publicar un procedimiento almacenado, una ejecución de procedimiento almacenado o un artículo de función definida por el usuario en una publicación transaccional o de instantáneas
En la base de datos de publicación del publicador, ejecute sp_addarticle. Especifique uno de los valores siguientes para @type a fin de definir el tipo de artículo:
proc schema only - artículo de procedimiento almacenado sólo de esquema.
proc exec - replica la ejecución del procedimiento almacenado en todos los suscriptores del artículo. Para obtener más información, vea Publicar la ejecución de procedimientos almacenados en la replicación transaccional.
serializable proc exec - replica la ejecución del procedimiento almacenado sólo si éste se ejecuta dentro del contexto de una transacción serializable. Para obtener más información, vea Publicar la ejecución de procedimientos almacenados en la replicación transaccional.
func schema only - artículo de función definida por el usuario sólo de esquema.
Esto define un nuevo artículo para la publicación. Para obtener más información, vea Cómo definir un artículo (programación de la replicación con Transact-SQL).
Para publicar un artículo de tabla o vista en una publicación de mezcla
En la base de datos de publicación del publicador, ejecute sp_addmergearticle. Especifique uno de los valores siguientes para @type a fin de definir el tipo de artículo:
tabla - artículo de la tabla.
indexed view schema only - artículo de vista indizada sólo de esquema.
view schema only - artículo de vista sólo de esquema.
Esto define un nuevo artículo para la publicación. Para obtener más información, vea Cómo definir un artículo (programación de la replicación con Transact-SQL).
Para publicar un artículo de procedimiento almacenado o de función definida por el usuario en una publicación de mezcla
En la base de datos de publicación del publicador, ejecute sp_addmergearticle. Especifique uno de los valores siguientes para @type a fin de definir el tipo de artículo:
func schema only - artículo de función definida por el usuario sólo de esquema.
proc schema only - artículo de procedimiento almacenado sólo de esquema.
Esto define un nuevo artículo para la publicación. Para obtener más información, vea Cómo definir un artículo (programación de la replicación con Transact-SQL).