Condividi tramite


sp_article_validation (Transact-SQL)

Inizializza una richiesta di convalida dei dati per l'articolo specificato. Questa stored procedure viene eseguita nel database di pubblicazione del server di pubblicazione o nel database di sottoscrizione del Sottoscrittore.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

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

Argomenti

  • [ @publication=] 'publication'
    Nome della pubblicazione che include l'articolo. publication è di tipo sysname e non prevede alcun valore predefinito.

  • [ @article=] 'article'
    Nome dell'articolo da convalidare. article è di tipo sysname e non prevede alcun valore predefinito.

  • [ @rowcount_only=] type_of_check_requested
    Indica se per la tabella viene restituito solo il conteggio delle righe. type_of_check_requested è di tipo smallint e il valore predefinito è 1.

    Se è 0, vengono eseguiti il conteggio delle righe e un checksum compatibile con Microsoft SQL Server 7.0.

    Se è 1, viene semplicemente eseguito il conteggio delle righe.

    Se è 2, vengono eseguiti il conteggio delle righe e il checksum binario.

  • [ @full_or_fast=] full_or_fast
    Metodo utilizzato per il conteggio delle righe. full_or_fast è di tipo tinyint e i possibili valori sono i seguenti.

    Valore

    Descrizione

    0

    Esegue un conteggio completo tramite COUNT(*).

    1

    Esegue un conteggio rapido in sysindexes.rows. Il conteggio delle righe in sysindexes è più rapido rispetto al conteggio delle righe nella tabella effettiva. Tuttavia, poiché la tabella sysindexes viene aggiornata in modo non approfondito, è possibile che il conteggio delle righe non sia accurato.

    2 (predefinito)

    Esegue un conteggio rapido condizionale eseguendo innanzitutto un tentativo con il metodo rapido. Se il metodo rapido evidenzia delle differenze, viene applicato il metodo completo. Se expected_rowcount è NULL e si utilizza la stored procedure per ottenere il valore, viene sempre eseguita un'operazione COUNT(*) completa.

  • [ @shutdown_agent=] shutdown_agent
    Indica se l'esecuzione dell'agente di distribuzione viene interrotta immediatamente al termine della convalida. shutdown_agent è di tipo bit e il valore predefinito è 0. Se è 0, l'esecuzione dell'agente di distribuzione non viene interrotta. Se è 1, l'esecuzione dell'agente di distribuzione viene interrotta al termine della convalida dell'articolo.

  • [ @subscription_level=] subscription_level
    Indica se la convalida viene prelevata o meno da un gruppo di Sottoscrittori. subscription_level è di tipo bit e il valore predefinito è 0. Se è 0, la convalida viene applicata a tutti i Sottoscrittori. Se è 1, la convalida viene applicata solo a un subset dei Sottoscrittori specificati tramite chiamate alla stored procedure sp_marksubscriptionvalidation nella transazione aperta corrente.

  • [ @reserved=] reserved
    Identificato solo a scopo informativo. Non supportato. Non è garantita la compatibilità con le versioni future.

  • [ @publisher= ] 'publisher'
    Specifica un server di pubblicazione non Microsoft SQL Server. publisher è di tipo sysname e il valore predefinito è NULL.

    Nota

    Non utilizzare l'argomento publisher quando si richiede la convalida in un server di pubblicazione SQL Server.

Valori restituiti

0 (esito positivo) o 1 (esito negativo)

Osservazioni

La stored procedure sp_article_validation viene utilizzata per la replica transazionale.

La stored procedure sp_article_validation raccoglie le informazioni di convalida sull'articolo specificato e invia una richiesta di convalida al log delle transazioni. Quando l'agente di distribuzione riceve la richiesta, confronta le informazioni di convalida incluse nella richiesta con quelle della tabella del Sottoscrittore. I risultati della convalida vengono visualizzati negli avvisi di Monitoraggio replica e SQL Server Agent.

Autorizzazioni

Solo gli utenti con autorizzazioni SELECT ALL nella tabella di origine per l'articolo che viene modificato possono eseguire sp_article_validation.