sp_publication_validation (Transact-SQL)
Inicia uma solicitação de validação de artigo para cada artigo na publicação especificada. Esse procedimento armazenado é executado no Publicador, no banco de dados de publicação.
Convenções da sintaxe Transact-SQL
Sintaxe
sp_publication_validation [ @publication = ] 'publication'
[ , [ @rowcount_only = ] type_of_check_requested ]
[ , [ @full_or_fast = ] full_or_fast ]
[ , [ @shutdown_agent = ] shutdown_agent ]
[ , [ @publisher = ] 'publisher' ]
Argumentos
[@publication=] **'**publication'
É o nome da publicação. publication é sysname, sem padrão.[@rowcount_only=] rowcount_only
Especifica se apenas a contagem de linhas da tabela deve ser retornada. rowcount_only é smallint, e pode ter um dos valores a seguir.Valor
Descrição
0
Execute uma soma de verificação SQL Server 7.0 compatível.
Observação Quando um artigo é filtrado horizontalmente, uma operação de número de linhas é executada em vez de uma operação de soma de verificação.
1 (padrão)
Só execute uma verificação de número de linhas.
2
Execute uma verificação de número de linhas e soma de verificação binária.
Observação Para os Assinantes do SQL Server versão 7.0 , só uma validação de número de linhas é executada.
[@full_or_fast=] full_or_fast
É o método usado para calcular a contagem de linhas. full_or_fast é tinyint e pode ter um dos valores a seguir.Valor
Descrição
0
Efetua contagem completa usando COUNT (*).
1
Efetua contagem rápida de sysindexes.rows. A contagem de linhas em sys.sysindexes é muito mais rápida do que contar linhas na tabela atual. No entanto, como sys.sysindexes é atualizado com lentidão, o número de linhas pode não ser preciso.
2 (padrão)
Efetua contagem rápida condicional tentando primeiro o método rápido. Se o método rápido mostrar diferenças, reverterá ao método completo. Se expected_rowcount for NULL e o procedimento armazenado estiver sendo usado para obter o valor, um COUNT(*) completo sempre será usado.
[ @shutdown_agent=] shutdown_agent
Especifica se o Agente de Distribuição deve ou não ser desligado imediatamente após a conclusão da validação. shutdown_agent é bit, com um padrão de 0. Se for 0, o agente de replicação não desligará. Se for 1, o agente de replicação desligará após a validação do último artigo.[ @publisher = ] 'publisher'
Especifica um Publicador que não é do SQL Server. publisher é sysname, com um padrão de NULL.Observação publisher não deve ser usado na solicitação de validação em um Editor SQL Server.
Valores de código de retorno
0 (êxito) ou 1 (falha)
Comentários
sp_publication_validation é usado em replicação transacional.
sp_publication_validation pode ser chamado a qualquer momento depois que os artigos associados à publicação tiverem sido ativados. O procedimento pode ser executado manualmente (uma vez) ou como parte de um trabalho agendado regularmente que valida a data.
Se seu aplicativo tiver Assinantes de atualização imediata, sp_publication_validation poderá detectar erros falsos. sp_publication_validation primeiro calcula a contagem de linhas ou a soma de verificação no Publicador e, em seguida, no Assinante. Como o gatilho de atualização imediata pode propagar e atualizar do Assinante para o Publicador após a conclusão do número de linhas ou da soma de verificação no Publicador, mas antes que o número de linhas ou a soma de verificação estejam concluídos no Assinante, os valores podem alterar. Para garantir que os valores no Assinante e no Publicador não sejam alterados durante a validação de uma publicação, pare o serviço MS DTC (Coordenador de Transações Distribuídas da Microsoft) no Publicador durante a validação.
Permissões
Somente membros da função de servidor fixa sysadmin ou da função de banco de dados fixa db_owner podem executar sp_publication_validation.
Consulte também
Referência
sp_article_validation (Transact-SQL)
sp_table_validation (Transact-SQL)
Procedimentos armazenados do sistema (Transact-SQL)