Compartir a través de


sp_article_validation (Transact-SQL)

Se aplica a: SQL Server Azure SQL Managed Instance

Inicia una solicitud de validación de datos del artículo especificado. Este procedimiento almacenado se ejecuta en el publicador de la base de datos de publicaciones y en el suscriptor de la base de datos de suscripciones.

Convenciones de sintaxis de Transact-SQL

Sintaxis

sp_article_validation
    [ @publication = ] N'publication'
    , [ @article = ] N'article'
    [ , [ @rowcount_only = ] rowcount_only ]
    [ , [ @full_or_fast = ] full_or_fast ]
    [ , [ @shutdown_agent = ] shutdown_agent ]
    [ , [ @subscription_level = ] subscription_level ]
    [ , [ @reserved = ] reserved ]
    [ , [ @publisher = ] N'publisher' ]
[ ; ]

Argumentos

[ @publication = ] N'publication'

Nombre de la publicación en la que existe el artículo. @publication es sysname, sin ningún valor predeterminado.

[ @article = ] N'article'

Nombre del artículo que se va a validar. @article es sysname, sin ningún valor predeterminado.

[ @rowcount_only = ] rowcount_only

Especifica si solamente se devuelve el recuento de filas de la tabla. @rowcount_only es smallint, con un valor predeterminado de 1.

  • Si 0es , realice un recuento de filas y una suma de comprobación compatible con SQL Server 7.0.
  • Si 1es , realice solo una comprobación de recuento de filas.
  • Si 2es , realice un recuento de filas y una suma de comprobación binaria.

[ @full_or_fast = ] full_or_fast

Método utilizado para calcular el recuento de filas. @full_or_fast es tinyint y puede ser uno de estos valores:

Valor Descripción
0 Realiza el recuento completo mediante COUNT(*).
1 Realiza un recuento rápido de sysindexes.rows. El recuento de filas en sysindexes es más rápido que contar filas en la tabla real. Sin embargo, sysindexes se actualiza diferenciosamente y es posible que el recuento de filas no sea preciso.
2 (valor predeterminado) Realiza un recuento rápido condicional probando primero con el método rápido. Si el método rápido muestra diferencias, se utiliza el método completo. Si expected_rowcount es NULL y el procedimiento almacenado se usa para obtener el valor, siempre se usa un completo COUNT(*) .

[ @shutdown_agent = ] shutdown_agent

Especifica si el agente de distribución debe cerrarse inmediatamente cuando finalice la validación. @shutdown_agent es bit, con un valor predeterminado de 0.

  • Si 0es , el Agente de distribución no se cierra.
  • Si 1es , el Agente de distribución se cierra después de validar el artículo.

[ @subscription_level = ] subscription_level

Especifica si un conjunto de suscriptores recoge o no la validación. @subscription_level es bit, con un valor predeterminado de 0.

  • Si 0es , la validación se aplica a todos los suscriptores.
  • Si 1es , la validación solo se aplica a un subconjunto de los suscriptores especificados por las llamadas a sp_marksubscriptionvalidation en la transacción abierta actual.

[ @reserved = ] reserved

Solamente se identifica con fines informativos. No compatible. La compatibilidad con versiones posteriores no está garantizada.

[ @publisher = ] N'publisher'

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

@publisher no se debe usar al solicitar validación en un publicador de SQL Server.

Valores de código de retorno

0 (correcto) o 1 (erróneo).

Comentarios

sp_article_validation se usa en la replicación transaccional.

sp_article_validation hace que la información de validación se recopile en el artículo especificado y publique una solicitud de validación en el registro de transacciones. Cuando el Agente de distribución recibe la solicitud, compara la información de validación de la solicitud con la tabla del suscriptor. Los resultados de la validación se muestran en el Monitor de replicación y en Agente SQL Server alertas.

Permisos

Solo los usuarios con SELECT ALL permisos en la tabla de origen del artículo que se valida pueden ejecutar sp_article_validation.