sp_helppublication (Transact-SQL)

Se aplica a:SQL ServerAzure SQL Managed Instance

Devuelve información acerca de una publicación. Para una publicación de Microsoft SQL Server, este procedimiento almacenado se ejecuta en el publicador de la base de datos de publicación. En el caso de una publicación Oracle, se ejecuta en el distribuidor de cualquier base de datos.

Convenciones de sintaxis de Transact-SQL

Sintaxis

  
sp_helppublication [ [ @publication = ] 'publication' ]  
    [ , [ @found=] found OUTPUT]  
    [ , [ @publisher = ] 'publisher' ]  

Argumentos

[ @publication = ] 'publication' Es el nombre de la publicación que se va a ver. publication es sysname, con un valor predeterminado de %, que devuelve información sobre todas las publicaciones.

[ @found = ] 'found' OUTPUT Es una marca para indicar la devolución de filas. found is int and an OUTPUT parameter, with a default of 23456. 1 indica que se encuentra la publicación. 0 indica que no se encuentra la publicación.

[ @publisher = ] 'publisher'Especifica un publicador que no es de SQL Server. publisher es sysname, con un valor predeterminado de NULL.

Nota:

No se debe especificar publisher al solicitar información de publicación de un publicador de SQL Server.

Conjuntos de resultados

Nombre de la columna Tipo de datos Descripción
pubid int Id. de la publicación.
name sysname Nombre de la publicación.
restricted int Solamente se identifica con fines informativos. No compatible. La compatibilidad con versiones posteriores no está garantizada.
status tinyint Estado actual de la publicación.

0 = Inactivo.

1 = Activo.
task Se utiliza para mantener la compatibilidad con versiones anteriores.
replication frequency tinyint Tipo de frecuencia de replicación:

0 = Transaccional

1 = Instantánea
synchronization method tinyint Modo de sincronización:

0 = Programa nativo de copia masiva (utilidad bcp )

1 = Copia masiva de caracteres

3 = Simultáneo, lo que significa que se usa la copia masiva nativa (utilidad bcp), pero las tablas no se bloquean durante la instantánea.

4 = Concurrent_c, lo que significa que se usa la copia masiva de caracteres, pero las tablas no se bloquean durante la instantánea.
description nvarchar(255) Descripción opcional de la publicación.
immediate_sync bit Indica si los archivos de sincronización se crean, o se vuelven a crear, cada vez que se ejecuta el Agente de instantáneas.
enabled_for_internet bit Indica si los archivos de sincronización de la publicación se exponen en Internet a través del protocolo de transferencias de archivos (FTP) u otros servicios.
allow_push bit Indica si se admiten suscripciones de inserción a la publicación.
allow_pull bit Indica si se admiten suscripciones de extracción a la publicación.
allow_anonymous bit Indica si se admiten suscripciones anónimas a la publicación.
independent_agent bit Indica si hay un Agente de distribución independiente para esta publicación.
immediate_sync_ready bit Indica si el Agente de instantáneas generó o no una instantánea que está lista para que la utilicen las nuevas suscripciones. Este parámetro se define únicamente si la publicación se define para tener siempre una instantánea disponible para las suscripciones nuevas o reinicializadas.
allow_sync_tran bit Indica si se permiten suscripciones de actualización inmediata a la publicación.
autogen_sync_procs bit Indica si se generan automáticamente procedimientos almacenados para admitir las suscripciones de actualización inmediata.
snapshot_jobid binary(16) Id. de tarea programada.
retention int Volumen de cambio, en horas, que se debe guardar para la publicación indicada.
has subscription bit Indica si la publicación tiene suscripciones activas. 1 significa que la publicación tiene suscripciones activas y 0 significa que la publicación no tiene suscripciones.
allow_queued_tran bit Especifica si se han habilitado las deshabilitaciones de colocación en cola de los cambios del suscriptor hasta que se puedan aplicar en el publicador. Si es 0, los cambios en el suscriptor no se ponen en cola.
snapshot_in_defaultfolder bit Especifica si los archivos de instantánea se almacenan en la carpeta predeterminada. Si es 0, los archivos de instantánea se han almacenado en la ubicación alternativa especificada por alternate_snapshot_folder. Si es 1, los archivos de instantánea se pueden encontrar en la carpeta predeterminada.
alt_snapshot_folder nvarchar(255) Especifica la ubicación de la carpeta alternativa de la instantánea.
pre_snapshot_script nvarchar(255) Especifica un puntero a una ubicación de archivo .sql . El Agente de distribución ejecutará el script previo a la instantánea antes de la ejecución de cualquiera de los scripts de objetos replicados al aplicar la instantánea en un suscriptor.
post_snapshot_script nvarchar(255) Especifica un puntero a una ubicación de archivo .sql . El Agente de distribución ejecutará el script posterior a la instantánea después de que se apliquen el resto de scripts de objetos replicados y datos durante la sincronización inicial.
compress_snapshot bit Especifica que la instantánea escrita en la ubicación de alt_snapshot_folder se comprimirá en el formato CAB de Microsoft. 0 especifica que la instantánea no se comprimirá.
ftp_address sysname Dirección de red del servicio FTP para el distribuidor. Especifica dónde se encuentran los archivos de instantánea de una publicación para que los recoja el Agente de distribución o el Agente de mezcla de un suscriptor.
ftp_port int Número de puerto del servicio FTP para el distribuidor.
ftp_subdirectory nvarchar(255) Especifica dónde estarán disponibles los archivos de instantánea para que los recoja el Agente de distribución o el Agente de mezcla del suscriptor si la publicación admite la propagación de instantáneas mediante FTP.
ftp_login sysname Nombre de usuario usado para conectarse al servicio FTP.
allow_dts bit Especifica que la publicación permite transformaciones de datos. 0 especifica que no se permiten transformaciones DTS.
allow_subscription_copy bit Especifica si se ha habilitado la capacidad de copiar las bases de datos de suscripciones que se suscriben a esta publicación. 0 significa que no se permite copiar.
centralized_conflicts bit Especifica si los registros de conflicto se almacenan en el publicador.

0 = Los registros de conflicto se almacenan en el publicador y en el suscriptor que causó el conflicto.

1 = Los registros de conflicto se almacenan en el publicador.
conflict_retention int Especifica el período de retención de conflictos, en días.
conflict_policy int Especifica la directiva de resolución de conflictos seguida cuando se utiliza la opción de suscriptor de actualización en cola. Puede ser uno de estos valores:

1 = Publisher gana el conflicto.

2 = El suscriptor gana el conflicto.

3 = La suscripción se reinicializa.
queue_type Especifica el tipo de cola utilizado. Puede ser uno de estos valores:

msmq = Usar Microsoft Message Queuing para almacenar transacciones.

sql = Use SQL Server para almacenar transacciones.

Nota: Se ha interrumpido la compatibilidad con Message Queuing.
backward_comp_level Nivel de compatibilidad de la base de datos, que puede ser uno de los que se especifican a continuación:

90 = Microsoft SQL Server 2005 (9.x)

100 = Microsoft SQL Server 2008 (10.0.x)
publish_to_AD bit Especifica si la publicación se publica en Microsoft Active Directory. Un valor de 1 indica que se publica y un valor de 0 indica que no está publicado.
allow_initialize_from_backup bit Indica si los suscriptores pueden inicializar una suscripción a esta publicación a partir de una copia de seguridad en lugar de una instantánea inicial. 1 significa que las suscripciones se pueden inicializar a partir de una copia de seguridad y 0 significa que no pueden hacerlo. Para obtener más información, consulte Inicialización de una suscripción transaccional sin una instantánea de un suscriptor transaccional sin una instantánea.
replicate_ddl int Indica si la publicación admite replicación de esquema. 1 indica que las instrucciones del lenguaje de definición de datos (DDL) ejecutadas en el publicador se replican y 0 indica que las instrucciones DDL no se replican. Para más información, vea Realizar cambios de esquema en bases de datos de publicaciones.
enabled_for_p2p int Indica si la publicación se puede utilizar en una topología de replicación punto a punto. 1 indica que la publicación admite la replicación punto a punto. Para obtener más información, consulte Peer-to-Peer Transactional Replication.
publish_local_changes_only int Solamente se identifica con fines informativos. No compatible. La compatibilidad con versiones posteriores no está garantizada.
enabled_for_het_sub int Especifica si la publicación admite suscriptores que no son SQL Server. Un valor de 1 significa que se admiten suscriptores que no son SQL Server. Un valor de 0 significa que solo se admiten SQL Server suscriptores. Para más información, consulte Non-SQL Server Subscribers.
enabled_for_p2p_conflictdetection int Especifica si el Agente de distribución detecta los conflictos para una publicación que está habilitada para la replicación punto a punto. Un valor de 1 significa que se detectan conflictos. Para más información, consulte Conflict Detection in Peer-to-Peer Replication.
originator_id int Especifica un Id. para un nodo en una topología punto a punto. Este identificador se usa para la detección de conflictos si enabled_for_p2p_conflictdetection está establecido en 1. Para obtener una lista de identificadores que ya se hayan utilizado, consulte la tabla del sistema Mspeer_originatorid_history .
p2p_continue_onconflict int Especifica si el Agente de distribución continúa procesando los cambios cuando se detecta un conflicto. Un valor de 1 significa que el agente continúa procesando los cambios.

**Precaución** Se recomienda usar el valor predeterminado de 0. Cuando esta opción se establece en 1, el Agente de distribución intenta converger datos en la topología aplicando la fila en conflicto desde el nodo que tiene el identificador de origen más alto. Este método no garantiza la convergencia. Debe asegurarse de que la topología sea coherente una vez detectado un conflicto. Para obtener más información, vea "Controlar los conflictos" en Conflict Detection in Peer-to-Peer Replication.
allow_partition_switch int Especifica si ALTER TABLE... Las instrucciones SWITCH se pueden ejecutar en la base de datos publicada. Para obtener más información, vea Replicar tablas e índices con particiones.
replicate_partition_switch int Especifica si ALTER TABLE... Las instrucciones SWITCH que se ejecutan en la base de datos publicada deben replicarse en suscriptores. Esta opción solo es válida si allow_partition_switch está establecido en 1.
enabled_for_p2p_lastwriter_conflictdetection int A partir de SQL Server 2019 (15.x) CU 13, especifica si el Agente de distribución detecta los últimos conflictos de escritura para una publicación habilitada para la replicación punto a punto. Un valor de 1 significa que se detectan los últimos conflictos de escritura.

Valores de código de retorno

0 (correcto) o 1 (error)

Comentarios

El procedimiento sp_helppublication se utiliza en la replicación de instantáneas y transaccional.

sp_helppublication devolverá información sobre todas las publicaciones que son propiedad del usuario que ejecuta este procedimiento.

Ejemplo

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

USE [AdventureWorks2022]
EXEC sp_helppublication @publication = @myTranPub
GO

Permisos

Solo los miembros del rol fijo de servidor sysadmin en el publicador o los miembros del rol fijo de base de datos db_owner en la base de datos de publicación o los usuarios de la lista de acceso a la publicación (PAL) pueden ejecutar sp_helppublication.

Para un publicador que no sea de SQL Server, solo los miembros del rol fijo de servidor sysadmin en el distribuidor o los miembros del rol fijo de base de datos db_owner en la base de datos de distribución o los usuarios de la PAL pueden ejecutar sp_helppublication.

Consulte también

Ver y modificar propiedades de publicación
sp_addpublication (Transact-SQL)
sp_changepublication (Transact-SQL)
sp_droppublication (Transact-SQL)
Procedimientos almacenados de replicación (Transact-SQL)