Cómo validar datos en el suscriptor (programación de la replicación con Transact-SQL)

La replicación le permite validar mediante programación que los datos en el suscriptor coinciden con los datos en el publicador utilizando los procedimientos almacenados de la replicación, donde los procedimientos utilizados dependen del tipo de topología de replicación.

Para validar los datos para todos los artículos de una publicación transaccional

  1. En la base de datos de publicación del publicador, ejecute sp_publication_validation (Transact-SQL). Especifique @publication y uno de los siguientes valores para @rowcount_only:

    • 1: sólo comprobación del recuento de filas (el valor predeterminado)

    • 2: recuento de filas y suma de comprobación binaria.

    Nota

    Al ejecutar sp_publication_validation (Transact-SQL), se ejecuta sp_article_validation (Transact-SQL) para cada artículo de la publicación. Para ejecutar correctamente sp_publication_validation (Transact-SQL), debe tener los permisos establecidos en SELECT en todas las columnas en las tablas base publicadas.

  2. (Opcional) Inicie el Agente de distribución de cada suscripción si aún no se está ejecutando. Para obtener más información, vea Cómo sincronizar una suscripción de extracción (programación de la replicación) y Cómo sincronizar una suscripción de inserción (programación de la replicación).

  3. Compruebe el resultado de la validación en la salida del agente. Para obtener más información, vea Validar los datos replicados.

Para validar los datos de un único artículo de una publicación transaccional

  1. En la base de datos de publicación del publicador, ejecute sp_article_validation (Transact-SQL). Especificar @publication, el nombre del artículo para @articley uno de los siguientes valores para @rowcount_only:

    • 1: sólo comprobación del recuento de filas (el valor predeterminado)

    • 2: recuento de filas y suma de comprobación binaria.

    Nota

    Para ejecutar correctamente sp_article_validation (Transact-SQL), debe tener los permisos establecidos en SELECT en todas las columnas de la tabla base publicada.

  2. (Opcional) Iniciar el Agente de distribución de cada suscripción si aún no se está ejecutando. Para obtener más información, vea Cómo sincronizar una suscripción de extracción (programación de la replicación) y Cómo sincronizar una suscripción de inserción (programación de la replicación).

  3. Compruebe el resultado de la validación en la salida del agente. Para obtener más información, vea Validar los datos replicados.

Para validar datos de un suscriptor único en una publicación transaccional

  1. En el publicador de la base de datos de publicación, abra una transacción explícita mediante BEGIN TRANSACTION (Transact-SQL).

  2. En la base de datos de publicación del publicador, ejecute sp_marksubscriptionvalidation (Transact-SQL). Especifique la publicación para @publication, el nombre del suscriptor para @subscribery el nombre de la base de datos de suscripciones para @destination_db.

  3. (Opcional) Repita el paso 2 para cada suscripción que se está validando.

  4. En la base de datos de publicación del publicador, ejecute sp_article_validation (Transact-SQL). Especificar @publication, el nombre del artículo para @articley uno de los siguientes valores para @rowcount_only:

    • 1: sólo comprobación del recuento de filas (el valor predeterminado)

    • 2: recuento de filas y suma de comprobación binaria.

    Nota

    Para ejecutar correctamente sp_article_validation (Transact-SQL), debe tener los permisos establecidos en SELECT en todas las columnas de la tabla base publicada.

  5. En la base de datos de publicación del publicador, confirme la transacción mediante COMMIT TRANSACTION (Transact-SQL).

  6. (Opcional) Repita los pasos 1 a 5 para cada artículo que se está validando.

  7. (Opcional) Inicie el Agente de distribución si aún no se está ejecutando. Para obtener más información, vea Cómo sincronizar una suscripción de extracción (programación de la replicación) y Cómo sincronizar una suscripción de inserción (programación de la replicación).

  8. Compruebe el resultado de la validación en la salida del agente. Para obtener más información, vea Cómo validar datos en el suscriptor (SQL Server Management Studio).

Para validar datos de todas las suscripciones en una publicación de mezcla

  1. En la base de datos de publicación del publicador, ejecute sp_validatemergepublication (Transact-SQL). Especifique @publication y uno de los siguientes valores para @level:

    • 1: validación sólo del recuento de filas.

    • 3: validación de la suma de comprobación binaria del recuento de filas.

    Esto marca todas las suscripciones para validación.

  2. Inicie el Agente de mezcla para cada suscripción. Para obtener más información, vea Cómo sincronizar una suscripción de extracción (programación de la replicación) y Cómo sincronizar una suscripción de inserción (programación de la replicación).

  3. Compruebe el resultado de la validación en la salida del agente. Para obtener más información, vea Cómo validar datos en el suscriptor (SQL Server Management Studio).

Para validar datos de las suscripciones seleccionadas en una publicación de mezcla

  1. En la base de datos de publicación del publicador, ejecute sp_validatemergesubscription (Transact-SQL). Especifique @publication, el nombre del suscriptor para @suscriptor, el nombre de la base de datos de suscripciones para @subscriber_dby uno de los valores siguientes para @level:

    • 1: validación sólo del recuento de filas.

    • 3: validación de la suma de comprobación binaria del recuento de filas.

    Esto marca la suscripción seleccionada para validación.

  2. Inicie el Agente de mezcla para cada suscripción. Para obtener más información, vea Cómo sincronizar una suscripción de extracción (programación de la replicación) y Cómo sincronizar una suscripción de inserción (programación de la replicación).

  3. Compruebe el resultado de la validación en la salida del agente.

  4. Repita los pasos 1 a 3 para cada suscripción que se está validando.

Nota

Una suscripción a una publicación de mezcla también se puede validar al final de una sincronización especificando el parámetro -Validate al ejecutar Agente de mezcla de replicación.

Para validar los datos en una suscripción utilizando los parámetros del Agente de mezcla