Compartilhar via


sp_helppublication (Transact-SQL)

Aplica-se a: SQL Server Instância Gerenciada de SQL do Azure

Retorna informações sobre uma publicação. Para uma publicação do SQL Server, esse procedimento armazenado é executado no Publicador no banco de dados de publicação. Para uma publicação Oracle, esse procedimento armazenado é executado no Distribuidor, em qualquer banco de dados.

Convenções de sintaxe de Transact-SQL

Sintaxe

sp_helppublication_snapshot
    [ @publication = ] N'publication'
    [ , [ @publisher = ] N'publisher' ]
[ ; ]

Argumentos

@publication [ = ] N'publicação'

O nome da publicação a ser visualizada. @publication é sysname, com um padrão de %, que retorna informações sobre todas as publicações.

@publisher [ = ] N'editor'

Especifica um editor que não seja do SQL Server. @publisher é sysname, com um padrão de NULL.

Observação

publicador não deve ser especificado ao solicitar informações de publicação de um Publicador do SQL Server.

Conjunto de resultados

Nome da coluna Tipo de dados Descrição
pubid int ID da publicação.
name sysname Nome da publicação.
restricted int Identificado apenas para fins informativos. Não há suporte. A compatibilidade futura não está garantida.
status tinyint O status atual da publicação.

0 = Inativo.
1 = Ativo.
task Usado para compatibilidade com versões anteriores.
replication frequency tinyint Tipo de frequência de replicação:

0 = Transacional
1 = Instantâneo
synchronization method tinyint Modo de sincronização:

0 = Programa de cópia em massa nativo (utilitário bcp )
1 = Cópia em massa de caracteres
3 = Concurrent, o que significa que a cópia em massa nativa (utilitário bcp ) é usada, mas as tabelas não são bloqueadas durante o snapshot
4 = Concurrent_c, o que significa que a cópia em massa de caracteres é usada, mas as tabelas não são bloqueadas durante o instantâneo
description nvarchar(255) Descrição opcional para a publicação.
immediate_sync bit Especifica se os arquivos de sincronização são criados ou recriados sempre que o Snapshot Agent é executado.
enabled_for_internet bit Especifica se os arquivos de sincronização da publicação são expostos à Internet, por meio do protocolo FTP e de outros serviços.
allow_push bit Especifica se as assinaturas push são permitidas na publicação.
allow_pull bit Especifica se as assinaturas pull são permitidas na publicação.
allow_anonymous bit Especifica se assinaturas anônimas são permitidas na publicação.
independent_agent bit Especifica se há um Agente de Distribuição autônomo para esta publicação.
immediate_sync_ready bit Especifica se o Snapshot Agent gerou um instantâneo que está pronto para ser usado por novas assinaturas. Esse parâmetro só será definido se a publicação estiver definida para ter sempre um instantâneo disponível para assinaturas novas ou reiniciadas.
allow_sync_tran bit Especifica se as assinaturas de atualização imediata são permitidas na publicação.
autogen_sync_procs bit Especifica se os procedimentos armazenados devem ser gerados automaticamente para dar suporte a assinaturas de atualização imediata.
snapshot_jobid binary(16) ID de tarefa agendada.
retention int A quantidade de alteração, em horas, a ser salva para a publicação determinada.
has subscription bit Especifica se a publicação tem uma assinatura ativa. 1 significa que a publicação tem assinaturas ativas e 0 significa que a publicação não tem assinaturas.
allow_queued_tran bit Especifica se a desabilitação do enfileiramento de alterações no Assinante até que elas possam ser aplicadas no Publicador está habilitada. Se 0, as alterações no Assinante não serão enfileiradas.
snapshot_in_defaultfolder bit Especifica se arquivos de instantâneo são armazenados na pasta padrão. Se 0, os arquivos de instantâneo serão armazenados no local alternativo especificado pelo alternate_snapshot_folder. Se 1, os arquivos de instantâneo podem ser encontrados na pasta padrão.
alt_snapshot_folder nvarchar(255) Especifica o local da pasta alternativa para o instantâneo.
pre_snapshot_script nvarchar(255) Especifica um ponteiro para um local de .sql arquivo. O Distribution Agent executará o script pré-instantâneo antes de executar qualquer script de objeto replicado, ao aplicar um instantâneo no Assinante.
post_snapshot_script nvarchar(255) Especifica um ponteiro para um local de .sql arquivo. O Distribution Agent executará o script pós-instantâneo depois que todos os outros scripts e dados de objeto replicados forem aplicados durante uma sincronização inicial.
compress_snapshot bit Especifica que o instantâneo gravado no local alt_snapshot_folder deve ser compactado no formato CAB da Microsoft. 0 Especifica que o snapshot não está compactado.
ftp_address sysname O endereço de rede do serviço FTP para o Distribuidor. Especifica onde os arquivos de instantâneo de publicação ficam localizados para serem captados pelo Agente de Distribuição ou por um Assinante.
ftp_port int O número da porta do serviço FTP do Distribuidor.
ftp_subdirectory nvarchar(255) Especifica onde os arquivos de instantâneo estão disponíveis para o Distribution Agent ou o Merge Agent do assinante selecionar se a publicação oferecer suporte à propagação de instantâneos usando FTP.
ftp_login sysname O nome de usuário usado para se conectar ao serviço FTP.
allow_dts bit Especifica que a publicação permite transformações de dados. 0 especifica que as transformações DTS não são permitidas.
allow_subscription_copy bit Especifica se a capacidade de copiar os bancos de dados de assinatura que assinam esta publicação está habilitada. 0 significa que a cópia não é permitida.
centralized_conflicts bit Especifica se registros de conflito são ou não armazenados no Publicador:

0 = Os registros de conflito são armazenados no publicador e no assinante que causou o conflito.
1 = Os registros de conflito são armazenados no Publicador.
conflict_retention int Especifica o período de retenção de conflito, em dias.
conflict_policy int Especifica a política de resolução de conflito seguida quando a opção de assinante de atualização enfileirado é usada. Pode ser um destes valores:

1 = O editor vence o conflito.
2 = O assinante vence o conflito.
3 = A assinatura é reinicializada.
queue_type Especifica o tipo de fila usado. Pode ser um destes valores:

msmq = Use o serviço de enfileiramento de mensagens da Microsoft para armazenar transações.
sql = Use o SQL Server para armazenar transações.
Observação: o suporte para o serviço de enfileiramento de mensagens foi descontinuado.
backward_comp_level Nível de compatibilidade do banco de dados e pode ser um dos seguintes valores:

90 = SQL Server 2005 (9.x)
100 = Microsoft SQL Server 2008 (10.0.x)
publish_to_AD bit Especifica se a publicação é publicada no Microsoft Active Directory. Um valor de 1 indica que ele foi publicado e um valor de 0 indica que ele não foi publicado.
allow_initialize_from_backup bit Indica se os Assinantes podem iniciar uma assinatura para essa publicação de um backup em vez de um instantâneo inicial. 1 significa que as assinaturas podem ser inicializadas a partir de um backup e 0 significa que não podem. Para obter mais informações, consulte Inicializar uma assinatura transacional sem um instantâneo Um assinante transacional sem um instantâneo.
replicate_ddl int Indica se há suporte para replicação de esquema para a publicação. 1 indica que as instruções DDL (linguagem de definição de dados) executadas no editor são replicadas e 0 indica que as instruções DDL não são replicadas. Para obter mais informações, consulte Make Schema Changes on Publication Databases (Fazer alterações de esquema em bancos de dados de publicação).
enabled_for_p2p int Especifica se a publicação pode ser usada em uma topologia de replicação ponto a ponto. 1 indica que a publicação dá suporte à replicação ponto a ponto. Para obter mais informações, consulte Ponto a ponto - Replicação transacional.
publish_local_changes_only int Identificado apenas para fins informativos. Não há suporte. A compatibilidade futura não está garantida.
enabled_for_het_sub int Especifica se a publicação oferece suporte a Assinantes não-SQL Server. Um valor de 1 significa que há suporte para Assinantes não-SQL Server. Um valor de 0 significa que há suporte apenas para Assinantes do SQL Server. Para obter mais informações, consulte Non-SQL Server Subscribers.
enabled_for_p2p_conflictdetection int Especifica se o Agente de Distribuição detecta conflitos para uma publicação que está habilitada para replicação ponto a ponto. Um valor de 1 significa que os conflitos são detectados. Para obter mais informações, consulte Ponto a ponto - Detecção de conflitos na replicação ponto a ponto.
originator_id int Especifica uma ID para um nó em uma topologia ponto a ponto. Essa ID será usada para detecção de conflitos se enabled_for_p2p_conflictdetection estiver definida como 1. Para obter uma lista de IDs que já são usadas, consulte a tabela do sistema MSpeer_originatorid_history .
p2p_continue_onconflict int Especifica se o Agente de Distribuição deve continuar processando alterações quando um conflito é detectado. Um valor de 1 significa que o agente continua a processar alterações.

Cuidado: recomendamos que você use o valor padrão de 0. Quando essa opção é definida como 1, o Distribution Agent tenta convergir dados na topologia aplicando a linha conflitante do nó que é a ID de originador mais alta. Esse método não garante a convergência. Verifique se a topologia está consistente depois que um conflito é detectado. Para obter mais informações, consulte "Manipulando conflitos" em Ponto a ponto - Detecção de conflitos na replicação ponto a ponto.
allow_partition_switch int Especifica se ALTER TABLE...SWITCH as instruções podem ser executadas no banco de dados publicado. Para obter mais informações, consulte Replicar tabelas e índices particionados.
replicate_partition_switch int Especifica se ALTER TABLE...SWITCH as instruções executadas no banco de dados publicado devem ser replicadas para Assinantes. Essa opção só será válida se allow_partition_switch estiver definida como 1.
enabled_for_p2p_lastwriter_conflictdetection int Especifica se o Distribution Agent detecta conflitos de detecção e resolução de conflitos Configurar o último gravador para uma publicação habilitada para replicação ponto a ponto. Um valor de significa que os últimos conflitos de 1 gravador são detectados.

Aplica-se a: SQL Server 2019 (15.x) 13 e versões posteriores.

Valores do código de retorno

0 (sucesso) ou 1 (falha).

Comentários

sp_helppublication é usado na replicação de instantâneo e transacional.

sp_helppublication Retorna informações sobre todas as publicações pertencentes ao usuário que executa esse procedimento.

Exemplos

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

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

Permissões

Somente membros da função de servidor fixa sysadmin no Publicador ou membros da função de banco de dados fixa db_owner no banco de dados de publicação ou usuários na PAL (lista de acesso à publicação) podem executar sp_helppublication.

Para um Publicador não-SQL Server, somente membros da função de servidor fixa sysadmin no Distribuidor ou membros da função de banco de dados fixa db_owner no banco de dados de distribuição ou usuários na PAL podem executar sp_helppublication.